menu(waveformPOST) {
	choice(waveformPOST_Always,"Always")
	choice(waveformPOST_OnChange,"On Change")
}
menu(stringoutPOST) {
	choice(stringoutPOST_OnChange,"On Change")
	choice(stringoutPOST_Always,"Always")
}
menu(stringinPOST) {
	choice(stringinPOST_OnChange,"On Change")
	choice(stringinPOST_Always,"Always")
}
menu(seqSELM) {
	choice(seqSELM_All,"All")
	choice(seqSELM_Specified,"Specified")
	choice(seqSELM_Mask,"Mask")
}
menu(selSELM) {
	choice(selSELM_Specified,"Specified")
	choice(selSELM_High_Signal,"High Signal")
	choice(selSELM_Low_Signal,"Low Signal")
	choice(selSELM_Median_Signal,"Median Signal")
}
menu(menuYesNo) {
	choice(menuYesNoNO,"NO")
	choice(menuYesNoYES,"YES")
}
menu(menuSimm) {
	choice(menuSimmNO,"NO")
	choice(menuSimmYES,"YES")
	choice(menuSimmRAW,"RAW")
}
menu(menuScan) {
	choice(menuScanPassive,"Passive")
	choice(menuScanEvent,"Event")
	choice(menuScanI_O_Intr,"I/O Intr")
	choice(menuScan10_second,"10 second")
	choice(menuScan5_second,"5 second")
	choice(menuScan2_second,"2 second")
	choice(menuScan1_second,"1 second")
	choice(menuScan_5_second,".5 second")
	choice(menuScan_2_second,".2 second")
	choice(menuScan_1_second,".1 second")
}
menu(menuPriority) {
	choice(menuPriorityLOW,"LOW")
	choice(menuPriorityMEDIUM,"MEDIUM")
	choice(menuPriorityHIGH,"HIGH")
}
menu(menuPini) {
	choice(menuPiniNO,"NO")
	choice(menuPiniYES,"YES")
	choice(menuPiniRUN,"RUN")
	choice(menuPiniRUNNING,"RUNNING")
	choice(menuPiniPAUSE,"PAUSE")
	choice(menuPiniPAUSED,"PAUSED")
}
menu(menuOmsl) {
	choice(menuOmslsupervisory,"supervisory")
	choice(menuOmslclosed_loop,"closed_loop")
}
menu(menuIvoa) {
	choice(menuIvoaContinue_normally,"Continue normally")
	choice(menuIvoaDon_t_drive_outputs,"Don't drive outputs")
	choice(menuIvoaSet_output_to_IVOV,"Set output to IVOV")
}
menu(menuFtype) {
	choice(menuFtypeSTRING,"STRING")
	choice(menuFtypeCHAR,"CHAR")
	choice(menuFtypeUCHAR,"UCHAR")
	choice(menuFtypeSHORT,"SHORT")
	choice(menuFtypeUSHORT,"USHORT")
	choice(menuFtypeLONG,"LONG")
	choice(menuFtypeULONG,"ULONG")
	choice(menuFtypeFLOAT,"FLOAT")
	choice(menuFtypeDOUBLE,"DOUBLE")
	choice(menuFtypeENUM,"ENUM")
}
menu(menuConvert) {
	choice(menuConvertNO_CONVERSION,"NO CONVERSION")
	choice(menuConvertSLOPE,"SLOPE")
	choice(menuConvertLINEAR,"LINEAR")
	choice(menuConverttypeKdegF,"typeKdegF")
	choice(menuConverttypeKdegC,"typeKdegC")
	choice(menuConverttypeJdegF,"typeJdegF")
	choice(menuConverttypeJdegC,"typeJdegC")
	choice(menuConverttypeEdegF,"typeEdegF(ixe only)")
	choice(menuConverttypeEdegC,"typeEdegC(ixe only)")
	choice(menuConverttypeTdegF,"typeTdegF")
	choice(menuConverttypeTdegC,"typeTdegC")
	choice(menuConverttypeRdegF,"typeRdegF")
	choice(menuConverttypeRdegC,"typeRdegC")
	choice(menuConverttypeSdegF,"typeSdegF")
	choice(menuConverttypeSdegC,"typeSdegC")
}
menu(menuCompress) {
	choice(menuCompressN_to_1_First_Value,"N to 1 First Value")
	choice(menuCompressN_to_1_Low_Value,"N to 1 Low Value")
	choice(menuCompressN_to_1_High_Value,"N to 1 High Value")
	choice(menuCompressN_to_1_Average,"N to 1 Average")
}
menu(menuAlarmStat) {
	choice(menuAlarmStatNO_ALARM,"NO_ALARM")
	choice(menuAlarmStatREAD,"READ")
	choice(menuAlarmStatWRITE,"WRITE")
	choice(menuAlarmStatHIHI,"HIHI")
	choice(menuAlarmStatHIGH,"HIGH")
	choice(menuAlarmStatLOLO,"LOLO")
	choice(menuAlarmStatLOW,"LOW")
	choice(menuAlarmStatSTATE,"STATE")
	choice(menuAlarmStatCOS,"COS")
	choice(menuAlarmStatCOMM,"COMM")
	choice(menuAlarmStatTIMEOUT,"TIMEOUT")
	choice(menuAlarmStatHWLIMIT,"HWLIMIT")
	choice(menuAlarmStatCALC,"CALC")
	choice(menuAlarmStatSCAN,"SCAN")
	choice(menuAlarmStatLINK,"LINK")
	choice(menuAlarmStatSOFT,"SOFT")
	choice(menuAlarmStatBAD_SUB,"BAD_SUB")
	choice(menuAlarmStatUDF,"UDF")
	choice(menuAlarmStatDISABLE,"DISABLE")
	choice(menuAlarmStatSIMM,"SIMM")
	choice(menuAlarmStatREAD_ACCESS,"READ_ACCESS")
	choice(menuAlarmStatWRITE_ACCESS,"WRITE_ACCESS")
}
menu(menuAlarmSevr) {
	choice(menuAlarmSevrNO_ALARM,"NO_ALARM")
	choice(menuAlarmSevrMINOR,"MINOR")
	choice(menuAlarmSevrMAJOR,"MAJOR")
	choice(menuAlarmSevrINVALID,"INVALID")
}
menu(fanoutSELM) {
	choice(fanoutSELM_All,"All")
	choice(fanoutSELM_Specified,"Specified")
	choice(fanoutSELM_Mask,"Mask")
}
menu(dfanoutSELM) {
	choice(dfanoutSELM_All,"All")
	choice(dfanoutSELM_Specified,"Specified")
	choice(dfanoutSELM_Mask,"Mask")
}
menu(compressALG) {
	choice(compressALG_N_to_1_Low_Value,"N to 1 Low Value")
	choice(compressALG_N_to_1_High_Value,"N to 1 High Value")
	choice(compressALG_N_to_1_Average,"N to 1 Average")
	choice(compressALG_Average,"Average")
	choice(compressALG_Circular_Buffer,"Circular Buffer")
	choice(compressALG_N_to_1_Median,"N to 1 Median")
}
menu(calcoutOOPT) {
	choice(calcoutOOPT_Every_Time,"Every Time")
	choice(calcoutOOPT_On_Change,"On Change")
	choice(calcoutOOPT_When_Zero,"When Zero")
	choice(calcoutOOPT_When_Non_zero,"When Non-zero")
	choice(calcoutOOPT_Transition_To_Zero,"Transition To Zero")
	choice(calcoutOOPT_Transition_To_Non_zero,"Transition To Non-zero")
}
menu(calcoutINAV) {
	choice(calcoutINAV_EXT_NC,"Ext PV NC")
	choice(calcoutINAV_EXT,"Ext PV OK")
	choice(calcoutINAV_LOC,"Local PV")
	choice(calcoutINAV_CON,"Constant")
}
menu(calcoutDOPT) {
	choice(calcoutDOPT_Use_VAL,"Use CALC")
	choice(calcoutDOPT_Use_OVAL,"Use OCAL")
}
menu(aoOIF) {
	choice(aoOIF_Full,"Full")
	choice(aoOIF_Incremental,"Incremental")
}
menu(aaoPOST) {
	choice(aaoPOST_Always,"Always")
	choice(aaoPOST_OnChange,"On Change")
}
menu(aaiPOST) {
	choice(aaiPOST_Always,"Always")
	choice(aaiPOST_OnChange,"On Change")
}
menu(aSubLFLG) {
	choice(aSubLFLG_IGNORE,"IGNORE")
	choice(aSubLFLG_READ,"READ")
}
menu(aSubEFLG) {
	choice(aSubEFLG_NEVER,"NEVER")
	choice(aSubEFLG_ON_CHANGE,"ON CHANGE")
	choice(aSubEFLG_ALWAYS,"ALWAYS")
}
recordtype(aai) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_NOACCESS) {
		prompt("Value")
		special(SPC_DBADDR)
		extra("void *		val")
		pp(TRUE)
		asl(ASL0)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_BITS1)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Engineering Units Name")
		promptgroup(GUI_BITS2)
		size(16)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Range")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_CLOCK)
		interest(1)
	}
	field(NELM,DBF_ULONG) {
		prompt("Number of Elements")
		initial("1")
		promptgroup(GUI_COMPRESS)
		special(SPC_NOMOD)
		interest(1)
	}
	field(FTVL,DBF_MENU) {
		prompt("Field Type of Value")
		promptgroup(GUI_CONVERT)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(NORD,DBF_ULONG) {
		prompt("Number elements read")
		special(SPC_NOMOD)
	}
	field(BPTR,DBF_NOACCESS) {
		prompt("Buffer Pointer")
		special(SPC_NOMOD)
		extra("void *		bptr")
		interest(4)
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_HIST)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(SIOL,DBF_INLINK) {
		prompt("Sim Input Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(MPST,DBF_MENU) {
		prompt("Post Value Monitors")
		promptgroup(GUI_DISPLAY)
		menu(aaiPOST)
		interest(1)
	}
	field(APST,DBF_MENU) {
		prompt("Post Archive Monitors")
		promptgroup(GUI_DISPLAY)
		menu(aaiPOST)
		interest(1)
	}
	field(HASH,DBF_ULONG) {
		prompt("Hash of OnChange data.")
		interest(3)
	}
}
recordtype(aao) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_NOACCESS) {
		prompt("Value")
		special(SPC_DBADDR)
		extra("void *		val")
		pp(TRUE)
		asl(ASL0)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(OUT,DBF_OUTLINK) {
		prompt("Output Specification")
		promptgroup(GUI_BITS1)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Engineering Units Name")
		promptgroup(GUI_BITS2)
		size(16)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Range")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_CLOCK)
		interest(1)
	}
	field(NELM,DBF_ULONG) {
		prompt("Number of Elements")
		initial("1")
		promptgroup(GUI_COMPRESS)
		special(SPC_NOMOD)
		interest(1)
	}
	field(FTVL,DBF_MENU) {
		prompt("Field Type of Value")
		promptgroup(GUI_CONVERT)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(NORD,DBF_ULONG) {
		prompt("Number elements read")
		special(SPC_NOMOD)
	}
	field(BPTR,DBF_NOACCESS) {
		prompt("Buffer Pointer")
		special(SPC_NOMOD)
		extra("void *		bptr")
		interest(4)
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_HIST)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(SIOL,DBF_OUTLINK) {
		prompt("Sim Output Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(MPST,DBF_MENU) {
		prompt("Post Value Monitors")
		promptgroup(GUI_DISPLAY)
		menu(aaoPOST)
		interest(1)
	}
	field(APST,DBF_MENU) {
		prompt("Post Archive Monitors")
		promptgroup(GUI_DISPLAY)
		menu(aaoPOST)
		interest(1)
	}
	field(HASH,DBF_ULONG) {
		prompt("Hash of OnChange data.")
		interest(3)
	}
}
recordtype(ai) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_DOUBLE) {
		prompt("Current EGU Value")
		promptgroup(GUI_INPUTS)
		pp(TRUE)
		asl(ASL0)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LINR,DBF_MENU) {
		prompt("Linearization")
		promptgroup(GUI_CONVERT)
		special(102)
		menu(menuConvert)
		pp(TRUE)
		interest(1)
	}
	field(EGUF,DBF_DOUBLE) {
		prompt("Engineer Units Full")
		promptgroup(GUI_CONVERT)
		special(102)
		pp(TRUE)
		interest(1)
	}
	field(EGUL,DBF_DOUBLE) {
		prompt("Engineer Units Low")
		promptgroup(GUI_CONVERT)
		special(102)
		pp(TRUE)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Engineering Units")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(AOFF,DBF_DOUBLE) {
		prompt("Adjustment Offset")
		promptgroup(GUI_CONVERT)
		pp(TRUE)
		interest(1)
	}
	field(ASLO,DBF_DOUBLE) {
		prompt("Adjustment Slope")
		initial("1")
		promptgroup(GUI_CONVERT)
		pp(TRUE)
		interest(1)
	}
	field(SMOO,DBF_DOUBLE) {
		prompt("Smoothing")
		promptgroup(GUI_CONVERT)
		interest(1)
	}
	field(HIHI,DBF_DOUBLE) {
		prompt("Hihi Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOLO,DBF_DOUBLE) {
		prompt("Lolo Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HIGH,DBF_DOUBLE) {
		prompt("High Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOW,DBF_DOUBLE) {
		prompt("Low Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HHSV,DBF_MENU) {
		prompt("Hihi Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LLSV,DBF_MENU) {
		prompt("Lolo Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HSV,DBF_MENU) {
		prompt("High Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LSV,DBF_MENU) {
		prompt("Low Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HYST,DBF_DOUBLE) {
		prompt("Alarm Deadband")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(ADEL,DBF_DOUBLE) {
		prompt("Archive Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(MDEL,DBF_DOUBLE) {
		prompt("Monitor Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LALM,DBF_DOUBLE) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ALST,DBF_DOUBLE) {
		prompt("Last Value Archived")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_DOUBLE) {
		prompt("Last Val Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ESLO,DBF_DOUBLE) {
		prompt("Raw to EGU Slope")
		initial("1")
		promptgroup(GUI_CONVERT)
		pp(TRUE)
		interest(2)
	}
	field(EOFF,DBF_DOUBLE) {
		prompt("Raw to EGU Offset")
		promptgroup(GUI_CONVERT)
		pp(TRUE)
		interest(2)
	}
	field(ROFF,DBF_LONG) {
		prompt("Raw Offset, obsolete")
		pp(TRUE)
		interest(2)
	}
	field(PBRK,DBF_NOACCESS) {
		prompt("Ptrto brkTable")
		special(SPC_NOMOD)
		extra("void *	pbrk")
		interest(4)
	}
	field(INIT,DBF_SHORT) {
		prompt("Initialized?")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LBRK,DBF_SHORT) {
		prompt("LastBreak Point")
		special(SPC_NOMOD)
		interest(3)
	}
	field(RVAL,DBF_LONG) {
		prompt("Current Raw Value")
		pp(TRUE)
	}
	field(ORAW,DBF_LONG) {
		prompt("Previous Raw Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SIOL,DBF_INLINK) {
		prompt("Sim Input Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SVAL,DBF_DOUBLE) {
		prompt("Simulation Value")
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuSimm)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
}
recordtype(ao) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_DOUBLE) {
		prompt("Desired Output")
		promptgroup(GUI_OUTPUT)
		pp(TRUE)
		asl(ASL0)
	}
	field(OVAL,DBF_DOUBLE) {
		prompt("Output Value")
	}
	field(OUT,DBF_OUTLINK) {
		prompt("Output Specification")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OROC,DBF_DOUBLE) {
		prompt("Output Rate of Chang")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(DOL,DBF_INLINK) {
		prompt("Desired Output Loc")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OMSL,DBF_MENU) {
		prompt("Output Mode Select")
		promptgroup(GUI_OUTPUT)
		menu(menuOmsl)
		interest(1)
	}
	field(OIF,DBF_MENU) {
		prompt("Out Full/Incremental")
		promptgroup(GUI_OUTPUT)
		menu(aoOIF)
		interest(1)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LINR,DBF_MENU) {
		prompt("Linearization")
		promptgroup(GUI_CONVERT)
		special(102)
		menu(menuConvert)
		pp(TRUE)
		interest(1)
	}
	field(EGUF,DBF_DOUBLE) {
		prompt("Eng Units Full")
		promptgroup(GUI_CONVERT)
		special(102)
		pp(TRUE)
		interest(1)
	}
	field(EGUL,DBF_DOUBLE) {
		prompt("Eng Units Low")
		promptgroup(GUI_CONVERT)
		special(102)
		pp(TRUE)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Engineering Units")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(ROFF,DBF_LONG) {
		prompt("Raw Offset, obsolete")
		pp(TRUE)
		interest(2)
	}
	field(EOFF,DBF_DOUBLE) {
		prompt("EGU to Raw Offset")
		promptgroup(GUI_CONVERT)
		pp(TRUE)
		interest(2)
	}
	field(ESLO,DBF_DOUBLE) {
		prompt("EGU to Raw Slope")
		initial("1")
		promptgroup(GUI_CONVERT)
		pp(TRUE)
		interest(2)
	}
	field(DRVH,DBF_DOUBLE) {
		prompt("Drive High Limit")
		promptgroup(GUI_OUTPUT)
		pp(TRUE)
		interest(1)
	}
	field(DRVL,DBF_DOUBLE) {
		prompt("Drive Low Limit")
		promptgroup(GUI_OUTPUT)
		pp(TRUE)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(AOFF,DBF_DOUBLE) {
		prompt("Adjustment Offset")
		promptgroup(GUI_CONVERT)
		pp(TRUE)
		interest(1)
	}
	field(ASLO,DBF_DOUBLE) {
		prompt("Adjustment Slope")
		promptgroup(GUI_CONVERT)
		pp(TRUE)
		interest(1)
	}
	field(HIHI,DBF_DOUBLE) {
		prompt("Hihi Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOLO,DBF_DOUBLE) {
		prompt("Lolo Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HIGH,DBF_DOUBLE) {
		prompt("High Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOW,DBF_DOUBLE) {
		prompt("Low Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HHSV,DBF_MENU) {
		prompt("Hihi Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LLSV,DBF_MENU) {
		prompt("Lolo Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HSV,DBF_MENU) {
		prompt("High Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LSV,DBF_MENU) {
		prompt("Low Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HYST,DBF_DOUBLE) {
		prompt("Alarm Deadband")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(ADEL,DBF_DOUBLE) {
		prompt("Archive Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(MDEL,DBF_DOUBLE) {
		prompt("Monitor Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(RVAL,DBF_LONG) {
		prompt("Current Raw Value")
		pp(TRUE)
	}
	field(ORAW,DBF_LONG) {
		prompt("Previous Raw Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(RBV,DBF_LONG) {
		prompt("Readback Value")
		special(SPC_NOMOD)
	}
	field(ORBV,DBF_LONG) {
		prompt("Prev Readback Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(PVAL,DBF_DOUBLE) {
		prompt("Previous value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LALM,DBF_DOUBLE) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ALST,DBF_DOUBLE) {
		prompt("Last Value Archived")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_DOUBLE) {
		prompt("Last Val Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(PBRK,DBF_NOACCESS) {
		prompt("Ptrto brkTable")
		special(SPC_NOMOD)
		extra("void *	pbrk")
		interest(4)
	}
	field(INIT,DBF_SHORT) {
		prompt("Initialized?")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LBRK,DBF_SHORT) {
		prompt("LastBreak Point")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SIOL,DBF_OUTLINK) {
		prompt("Sim Output Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(IVOA,DBF_MENU) {
		prompt("INVALID output action")
		promptgroup(GUI_OUTPUT)
		menu(menuIvoa)
		interest(2)
	}
	field(IVOV,DBF_DOUBLE) {
		prompt("INVALID output value")
		promptgroup(GUI_OUTPUT)
		interest(2)
	}
	field(OMOD,DBF_UCHAR) {
		prompt("Was OVAL modified?")
		special(SPC_NOMOD)
	}
}
recordtype(aSub) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_LONG) {
		prompt("Subr. return value")
		asl(ASL0)
	}
	field(OVAL,DBF_LONG) {
		prompt("Old return value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(INAM,DBF_STRING) {
		prompt("Initialize Subr. Name")
		promptgroup(GUI_SUB)
		special(SPC_NOMOD)
		size(41)
		interest(1)
	}
	field(LFLG,DBF_MENU) {
		prompt("Subr. Input Enable")
		promptgroup(GUI_SUB)
		menu(aSubLFLG)
		interest(1)
	}
	field(SUBL,DBF_INLINK) {
		prompt("Subroutine Name Link")
		promptgroup(GUI_SUB)
		special(SPC_NOMOD)
		interest(1)
	}
	field(SNAM,DBF_STRING) {
		prompt("Process Subr. Name")
		promptgroup(GUI_SUB)
		special(100)
		size(41)
		interest(1)
	}
	field(ONAM,DBF_STRING) {
		prompt("Old Subr. Name")
		promptgroup(GUI_SUB)
		special(SPC_NOMOD)
		size(41)
		interest(3)
	}
	field(SADR,DBF_NOACCESS) {
		prompt("Subroutine Address")
		special(SPC_NOMOD)
		extra("long (*sadr)(struct aSubRecord *)")
		interest(2)
	}
	field(BRSV,DBF_MENU) {
		prompt("Bad Return Severity")
		promptgroup(GUI_SUB)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(EFLG,DBF_MENU) {
		prompt("Output Event Flag")
		initial("1")
		promptgroup(GUI_OUTPUT)
		menu(aSubEFLG)
		interest(1)
	}
	field(INPA,DBF_INLINK) {
		prompt("Input Link A")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPB,DBF_INLINK) {
		prompt("Input Link B")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPC,DBF_INLINK) {
		prompt("Input Link C")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPD,DBF_INLINK) {
		prompt("Input Link D")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPE,DBF_INLINK) {
		prompt("Input Link E")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPF,DBF_INLINK) {
		prompt("Input Link F")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPG,DBF_INLINK) {
		prompt("Input Link G")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPH,DBF_INLINK) {
		prompt("Input Link H")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPI,DBF_INLINK) {
		prompt("Input Link I")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPJ,DBF_INLINK) {
		prompt("Input Link J")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPK,DBF_INLINK) {
		prompt("Input Link K")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPL,DBF_INLINK) {
		prompt("Input Link L")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPM,DBF_INLINK) {
		prompt("Input Link M")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPN,DBF_INLINK) {
		prompt("Input Link N")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPO,DBF_INLINK) {
		prompt("Input Link O")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPP,DBF_INLINK) {
		prompt("Input Link P")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPQ,DBF_INLINK) {
		prompt("Input Link Q")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPR,DBF_INLINK) {
		prompt("Input Link R")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPS,DBF_INLINK) {
		prompt("Input Link S")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPT,DBF_INLINK) {
		prompt("Input Link T")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPU,DBF_INLINK) {
		prompt("Input Link U")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(A,DBF_NOACCESS) {
		prompt("Input value A")
		special(SPC_DBADDR)
		extra("void *a")
		interest(2)
		asl(ASL0)
	}
	field(B,DBF_NOACCESS) {
		prompt("Input value B")
		special(SPC_DBADDR)
		extra("void *b")
		interest(2)
		asl(ASL0)
	}
	field(C,DBF_NOACCESS) {
		prompt("Input value C")
		special(SPC_DBADDR)
		extra("void *c")
		interest(2)
		asl(ASL0)
	}
	field(D,DBF_NOACCESS) {
		prompt("Input value D")
		special(SPC_DBADDR)
		extra("void *d")
		interest(2)
		asl(ASL0)
	}
	field(E,DBF_NOACCESS) {
		prompt("Input value E")
		special(SPC_DBADDR)
		extra("void *e")
		interest(2)
		asl(ASL0)
	}
	field(F,DBF_NOACCESS) {
		prompt("Input value F")
		special(SPC_DBADDR)
		extra("void *f")
		interest(2)
		asl(ASL0)
	}
	field(G,DBF_NOACCESS) {
		prompt("Input value G")
		special(SPC_DBADDR)
		extra("void *g")
		interest(2)
		asl(ASL0)
	}
	field(H,DBF_NOACCESS) {
		prompt("Input value H")
		special(SPC_DBADDR)
		extra("void *h")
		interest(2)
		asl(ASL0)
	}
	field(I,DBF_NOACCESS) {
		prompt("Input value I")
		special(SPC_DBADDR)
		extra("void *i")
		interest(2)
		asl(ASL0)
	}
	field(J,DBF_NOACCESS) {
		prompt("Input value J")
		special(SPC_DBADDR)
		extra("void *j")
		interest(2)
		asl(ASL0)
	}
	field(K,DBF_NOACCESS) {
		prompt("Input value K")
		special(SPC_DBADDR)
		extra("void *k")
		interest(2)
		asl(ASL0)
	}
	field(L,DBF_NOACCESS) {
		prompt("Input value L")
		special(SPC_DBADDR)
		extra("void *l")
		interest(2)
		asl(ASL0)
	}
	field(M,DBF_NOACCESS) {
		prompt("Input value M")
		special(SPC_DBADDR)
		extra("void *m")
		interest(2)
		asl(ASL0)
	}
	field(N,DBF_NOACCESS) {
		prompt("Input value N")
		special(SPC_DBADDR)
		extra("void *n")
		interest(2)
		asl(ASL0)
	}
	field(O,DBF_NOACCESS) {
		prompt("Input value O")
		special(SPC_DBADDR)
		extra("void *o")
		interest(2)
		asl(ASL0)
	}
	field(P,DBF_NOACCESS) {
		prompt("Input value P")
		special(SPC_DBADDR)
		extra("void *p")
		interest(2)
		asl(ASL0)
	}
	field(Q,DBF_NOACCESS) {
		prompt("Input value Q")
		special(SPC_DBADDR)
		extra("void *q")
		interest(2)
		asl(ASL0)
	}
	field(R,DBF_NOACCESS) {
		prompt("Input value R")
		special(SPC_DBADDR)
		extra("void *r")
		interest(2)
		asl(ASL0)
	}
	field(S,DBF_NOACCESS) {
		prompt("Input value S")
		special(SPC_DBADDR)
		extra("void *s")
		interest(2)
		asl(ASL0)
	}
	field(T,DBF_NOACCESS) {
		prompt("Input value T")
		special(SPC_DBADDR)
		extra("void *t")
		interest(2)
		asl(ASL0)
	}
	field(U,DBF_NOACCESS) {
		prompt("Input value U")
		special(SPC_DBADDR)
		extra("void *u")
		interest(2)
		asl(ASL0)
	}
	field(FTA,DBF_MENU) {
		prompt("Type of A")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTB,DBF_MENU) {
		prompt("Type of B")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTC,DBF_MENU) {
		prompt("Type of C")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTD,DBF_MENU) {
		prompt("Type of D")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTE,DBF_MENU) {
		prompt("Type of E")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTF,DBF_MENU) {
		prompt("Type of F")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTG,DBF_MENU) {
		prompt("Type of G")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTH,DBF_MENU) {
		prompt("Type of H")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTI,DBF_MENU) {
		prompt("Type of I")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTJ,DBF_MENU) {
		prompt("Type of J")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTK,DBF_MENU) {
		prompt("Type of K")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTL,DBF_MENU) {
		prompt("Type of L")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTM,DBF_MENU) {
		prompt("Type of M")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTN,DBF_MENU) {
		prompt("Type of N")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTO,DBF_MENU) {
		prompt("Type of O")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTP,DBF_MENU) {
		prompt("Type of P")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTQ,DBF_MENU) {
		prompt("Type of Q")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTR,DBF_MENU) {
		prompt("Type of R")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTS,DBF_MENU) {
		prompt("Type of S")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTT,DBF_MENU) {
		prompt("Type of T")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTU,DBF_MENU) {
		prompt("Type of U")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(NOA,DBF_ULONG) {
		prompt("Max. elements in A")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOB,DBF_ULONG) {
		prompt("Max. elements in B")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOC,DBF_ULONG) {
		prompt("Max. elements in C")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOD,DBF_ULONG) {
		prompt("Max. elements in D")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOE,DBF_ULONG) {
		prompt("Max. elements in E")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOF,DBF_ULONG) {
		prompt("Max. elements in F")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOG,DBF_ULONG) {
		prompt("Max. elements in G")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOH,DBF_ULONG) {
		prompt("Max. elements in H")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOI,DBF_ULONG) {
		prompt("Max. elements in I")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOJ,DBF_ULONG) {
		prompt("Max. elements in J")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOK,DBF_ULONG) {
		prompt("Max. elements in K")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOL,DBF_ULONG) {
		prompt("Max. elements in L")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOM,DBF_ULONG) {
		prompt("Max. elements in M")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NON,DBF_ULONG) {
		prompt("Max. elements in N")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOO,DBF_ULONG) {
		prompt("Max. elements in O")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOP,DBF_ULONG) {
		prompt("Max. elements in P")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOQ,DBF_ULONG) {
		prompt("Max. elements in Q")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOR,DBF_ULONG) {
		prompt("Max. elements in R")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOS,DBF_ULONG) {
		prompt("Max. elements in S")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOT,DBF_ULONG) {
		prompt("Max. elements in T")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOU,DBF_ULONG) {
		prompt("Max. elements in U")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NEA,DBF_ULONG) {
		prompt("Num. elements in A")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEB,DBF_ULONG) {
		prompt("Num. elements in B")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEC,DBF_ULONG) {
		prompt("Num. elements in C")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NED,DBF_ULONG) {
		prompt("Num. elements in D")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEE,DBF_ULONG) {
		prompt("Num. elements in E")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEF,DBF_ULONG) {
		prompt("Num. elements in F")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEG,DBF_ULONG) {
		prompt("Num. elements in G")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEH,DBF_ULONG) {
		prompt("Num. elements in H")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEI,DBF_ULONG) {
		prompt("Num. elements in I")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEJ,DBF_ULONG) {
		prompt("Num. elements in J")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEK,DBF_ULONG) {
		prompt("Num. elements in K")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEL,DBF_ULONG) {
		prompt("Num. elements in L")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEM,DBF_ULONG) {
		prompt("Num. elements in M")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEN,DBF_ULONG) {
		prompt("Num. elements in N")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEO,DBF_ULONG) {
		prompt("Num. elements in O")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEP,DBF_ULONG) {
		prompt("Num. elements in P")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEQ,DBF_ULONG) {
		prompt("Num. elements in Q")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NER,DBF_ULONG) {
		prompt("Num. elements in R")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NES,DBF_ULONG) {
		prompt("Num. elements in S")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NET,DBF_ULONG) {
		prompt("Num. elements in T")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEU,DBF_ULONG) {
		prompt("Num. elements in U")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(3)
	}
	field(OUTA,DBF_OUTLINK) {
		prompt("Output Link A")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTB,DBF_OUTLINK) {
		prompt("Output Link B")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTC,DBF_OUTLINK) {
		prompt("Output Link C")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTD,DBF_OUTLINK) {
		prompt("Output Link D")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTE,DBF_OUTLINK) {
		prompt("Output Link E")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTF,DBF_OUTLINK) {
		prompt("Output Link F")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTG,DBF_OUTLINK) {
		prompt("Output Link G")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTH,DBF_OUTLINK) {
		prompt("Output Link H")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTI,DBF_OUTLINK) {
		prompt("Output Link I")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTJ,DBF_OUTLINK) {
		prompt("Output Link J")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTK,DBF_OUTLINK) {
		prompt("Output Link K")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTL,DBF_OUTLINK) {
		prompt("Output Link L")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTM,DBF_OUTLINK) {
		prompt("Output Link M")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTN,DBF_OUTLINK) {
		prompt("Output Link N")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTO,DBF_OUTLINK) {
		prompt("Output Link O")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTP,DBF_OUTLINK) {
		prompt("Output Link P")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTQ,DBF_OUTLINK) {
		prompt("Output Link Q")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTR,DBF_OUTLINK) {
		prompt("Output Link R")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTS,DBF_OUTLINK) {
		prompt("Output Link S")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTT,DBF_OUTLINK) {
		prompt("Output Link T")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTU,DBF_OUTLINK) {
		prompt("Output Link U")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(VALA,DBF_NOACCESS) {
		prompt("Output value A")
		special(SPC_DBADDR)
		extra("void *vala")
		interest(2)
		asl(ASL0)
	}
	field(VALB,DBF_NOACCESS) {
		prompt("Output value B")
		special(SPC_DBADDR)
		extra("void *valb")
		interest(2)
		asl(ASL0)
	}
	field(VALC,DBF_NOACCESS) {
		prompt("Output value C")
		special(SPC_DBADDR)
		extra("void *valc")
		interest(2)
		asl(ASL0)
	}
	field(VALD,DBF_NOACCESS) {
		prompt("Output value D")
		special(SPC_DBADDR)
		extra("void *vald")
		interest(2)
		asl(ASL0)
	}
	field(VALE,DBF_NOACCESS) {
		prompt("Output value E")
		special(SPC_DBADDR)
		extra("void *vale")
		interest(2)
		asl(ASL0)
	}
	field(VALF,DBF_NOACCESS) {
		prompt("Output value F")
		special(SPC_DBADDR)
		extra("void *valf")
		interest(2)
		asl(ASL0)
	}
	field(VALG,DBF_NOACCESS) {
		prompt("Output value G")
		special(SPC_DBADDR)
		extra("void *valg")
		interest(2)
		asl(ASL0)
	}
	field(VALH,DBF_NOACCESS) {
		prompt("Output value H")
		special(SPC_DBADDR)
		extra("void *valh")
		interest(2)
		asl(ASL0)
	}
	field(VALI,DBF_NOACCESS) {
		prompt("Output value I")
		special(SPC_DBADDR)
		extra("void *vali")
		interest(2)
		asl(ASL0)
	}
	field(VALJ,DBF_NOACCESS) {
		prompt("Output value J")
		special(SPC_DBADDR)
		extra("void *valj")
		interest(2)
		asl(ASL0)
	}
	field(VALK,DBF_NOACCESS) {
		prompt("Output value K")
		special(SPC_DBADDR)
		extra("void *valk")
		interest(2)
		asl(ASL0)
	}
	field(VALL,DBF_NOACCESS) {
		prompt("Output value L")
		special(SPC_DBADDR)
		extra("void *vall")
		interest(2)
		asl(ASL0)
	}
	field(VALM,DBF_NOACCESS) {
		prompt("Output value M")
		special(SPC_DBADDR)
		extra("void *valm")
		interest(2)
		asl(ASL0)
	}
	field(VALN,DBF_NOACCESS) {
		prompt("Output value N")
		special(SPC_DBADDR)
		extra("void *valn")
		interest(2)
		asl(ASL0)
	}
	field(VALO,DBF_NOACCESS) {
		prompt("Output value O")
		special(SPC_DBADDR)
		extra("void *valo")
		interest(2)
		asl(ASL0)
	}
	field(VALP,DBF_NOACCESS) {
		prompt("Output value P")
		special(SPC_DBADDR)
		extra("void *valp")
		interest(2)
		asl(ASL0)
	}
	field(VALQ,DBF_NOACCESS) {
		prompt("Output value Q")
		special(SPC_DBADDR)
		extra("void *valq")
		interest(2)
		asl(ASL0)
	}
	field(VALR,DBF_NOACCESS) {
		prompt("Output value R")
		special(SPC_DBADDR)
		extra("void *valr")
		interest(2)
		asl(ASL0)
	}
	field(VALS,DBF_NOACCESS) {
		prompt("Output value S")
		special(SPC_DBADDR)
		extra("void *vals")
		interest(2)
		asl(ASL0)
	}
	field(VALT,DBF_NOACCESS) {
		prompt("Output value T")
		special(SPC_DBADDR)
		extra("void *valt")
		interest(2)
		asl(ASL0)
	}
	field(VALU,DBF_NOACCESS) {
		prompt("Output value U")
		special(SPC_DBADDR)
		extra("void *valu")
		interest(2)
		asl(ASL0)
	}
	field(OVLA,DBF_NOACCESS) {
		prompt("Old Output A")
		special(SPC_NOMOD)
		extra("void *ovla")
		interest(4)
		asl(ASL0)
	}
	field(OVLB,DBF_NOACCESS) {
		prompt("Old Output B")
		special(SPC_NOMOD)
		extra("void *ovlb")
		interest(4)
		asl(ASL0)
	}
	field(OVLC,DBF_NOACCESS) {
		prompt("Old Output C")
		special(SPC_NOMOD)
		extra("void *ovlc")
		interest(4)
		asl(ASL0)
	}
	field(OVLD,DBF_NOACCESS) {
		prompt("Old Output D")
		special(SPC_NOMOD)
		extra("void *ovld")
		interest(4)
		asl(ASL0)
	}
	field(OVLE,DBF_NOACCESS) {
		prompt("Old Output E")
		special(SPC_NOMOD)
		extra("void *ovle")
		interest(4)
		asl(ASL0)
	}
	field(OVLF,DBF_NOACCESS) {
		prompt("Old Output F")
		special(SPC_NOMOD)
		extra("void *ovlf")
		interest(4)
		asl(ASL0)
	}
	field(OVLG,DBF_NOACCESS) {
		prompt("Old Output G")
		special(SPC_NOMOD)
		extra("void *ovlg")
		interest(4)
		asl(ASL0)
	}
	field(OVLH,DBF_NOACCESS) {
		prompt("Old Output H")
		special(SPC_NOMOD)
		extra("void *ovlh")
		interest(4)
		asl(ASL0)
	}
	field(OVLI,DBF_NOACCESS) {
		prompt("Old Output I")
		special(SPC_NOMOD)
		extra("void *ovli")
		interest(4)
		asl(ASL0)
	}
	field(OVLJ,DBF_NOACCESS) {
		prompt("Old Output J")
		special(SPC_NOMOD)
		extra("void *ovlj")
		interest(4)
		asl(ASL0)
	}
	field(OVLK,DBF_NOACCESS) {
		prompt("Old Output K")
		special(SPC_NOMOD)
		extra("void *ovlk")
		interest(4)
		asl(ASL0)
	}
	field(OVLL,DBF_NOACCESS) {
		prompt("Old Output L")
		special(SPC_NOMOD)
		extra("void *ovll")
		interest(4)
		asl(ASL0)
	}
	field(OVLM,DBF_NOACCESS) {
		prompt("Old Output M")
		special(SPC_NOMOD)
		extra("void *ovlm")
		interest(4)
		asl(ASL0)
	}
	field(OVLN,DBF_NOACCESS) {
		prompt("Old Output N")
		special(SPC_NOMOD)
		extra("void *ovln")
		interest(4)
		asl(ASL0)
	}
	field(OVLO,DBF_NOACCESS) {
		prompt("Old Output O")
		special(SPC_NOMOD)
		extra("void *ovlo")
		interest(4)
		asl(ASL0)
	}
	field(OVLP,DBF_NOACCESS) {
		prompt("Old Output P")
		special(SPC_NOMOD)
		extra("void *ovlp")
		interest(4)
		asl(ASL0)
	}
	field(OVLQ,DBF_NOACCESS) {
		prompt("Old Output Q")
		special(SPC_NOMOD)
		extra("void *ovlq")
		interest(4)
		asl(ASL0)
	}
	field(OVLR,DBF_NOACCESS) {
		prompt("Old Output R")
		special(SPC_NOMOD)
		extra("void *ovlr")
		interest(4)
		asl(ASL0)
	}
	field(OVLS,DBF_NOACCESS) {
		prompt("Old Output S")
		special(SPC_NOMOD)
		extra("void *ovls")
		interest(4)
		asl(ASL0)
	}
	field(OVLT,DBF_NOACCESS) {
		prompt("Old Output T")
		special(SPC_NOMOD)
		extra("void *ovlt")
		interest(4)
		asl(ASL0)
	}
	field(OVLU,DBF_NOACCESS) {
		prompt("Old Output U")
		special(SPC_NOMOD)
		extra("void *ovlu")
		interest(4)
		asl(ASL0)
	}
	field(FTVA,DBF_MENU) {
		prompt("Type of VALA")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVB,DBF_MENU) {
		prompt("Type of VALB")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVC,DBF_MENU) {
		prompt("Type of VALC")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVD,DBF_MENU) {
		prompt("Type of VALD")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVE,DBF_MENU) {
		prompt("Type of VALE")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVF,DBF_MENU) {
		prompt("Type of VALF")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVG,DBF_MENU) {
		prompt("Type of VALG")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVH,DBF_MENU) {
		prompt("Type of VALH")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVI,DBF_MENU) {
		prompt("Type of VALI")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVJ,DBF_MENU) {
		prompt("Type of VALJ")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVK,DBF_MENU) {
		prompt("Type of VALK")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVL,DBF_MENU) {
		prompt("Type of VALL")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVM,DBF_MENU) {
		prompt("Type of VALM")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVN,DBF_MENU) {
		prompt("Type of VALN")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVO,DBF_MENU) {
		prompt("Type of VALO")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVP,DBF_MENU) {
		prompt("Type of VALP")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVQ,DBF_MENU) {
		prompt("Type of VALQ")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVR,DBF_MENU) {
		prompt("Type of VALR")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVS,DBF_MENU) {
		prompt("Type of VALS")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVT,DBF_MENU) {
		prompt("Type of VALT")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(FTVU,DBF_MENU) {
		prompt("Type of VALU")
		initial("DOUBLE")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(NOVA,DBF_ULONG) {
		prompt("Max. elements in VALA")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVB,DBF_ULONG) {
		prompt("Max. elements in VALB")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVC,DBF_ULONG) {
		prompt("Max. elements in VALC")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVD,DBF_ULONG) {
		prompt("Max. elements in VALD")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVE,DBF_ULONG) {
		prompt("Max. elements in VALE")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVF,DBF_ULONG) {
		prompt("Max. elements in VALF")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVG,DBF_ULONG) {
		prompt("Max. elements in VALG")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVH,DBF_ULONG) {
		prompt("Max. elements in VAlH")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVI,DBF_ULONG) {
		prompt("Max. elements in VALI")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVJ,DBF_ULONG) {
		prompt("Max. elements in VALJ")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVK,DBF_ULONG) {
		prompt("Max. elements in VALK")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVL,DBF_ULONG) {
		prompt("Max. elements in VALL")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVM,DBF_ULONG) {
		prompt("Max. elements in VALM")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVN,DBF_ULONG) {
		prompt("Max. elements in VALN")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVO,DBF_ULONG) {
		prompt("Max. elements in VALO")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVP,DBF_ULONG) {
		prompt("Max. elements in VALP")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVQ,DBF_ULONG) {
		prompt("Max. elements in VALQ")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVR,DBF_ULONG) {
		prompt("Max. elements in VALR")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVS,DBF_ULONG) {
		prompt("Max. elements in VALS")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVT,DBF_ULONG) {
		prompt("Max. elements in VALT")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NOVU,DBF_ULONG) {
		prompt("Max. elements in VALU")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NEVA,DBF_ULONG) {
		prompt("Num. elements in VALA")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVB,DBF_ULONG) {
		prompt("Num. elements in VALB")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVC,DBF_ULONG) {
		prompt("Num. elements in VALC")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVD,DBF_ULONG) {
		prompt("Num. elements in VALD")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVE,DBF_ULONG) {
		prompt("Num. elements in VALE")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVF,DBF_ULONG) {
		prompt("Num. elements in VALF")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVG,DBF_ULONG) {
		prompt("Num. elements in VALG")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVH,DBF_ULONG) {
		prompt("Num. elements in VAlH")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVI,DBF_ULONG) {
		prompt("Num. elements in VALI")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVJ,DBF_ULONG) {
		prompt("Num. elements in VALJ")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVK,DBF_ULONG) {
		prompt("Num. elements in VALK")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVL,DBF_ULONG) {
		prompt("Num. elements in VALL")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVM,DBF_ULONG) {
		prompt("Num. elements in VALM")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVN,DBF_ULONG) {
		prompt("Num. elements in VALN")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVO,DBF_ULONG) {
		prompt("Num. elements in VALO")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVP,DBF_ULONG) {
		prompt("Num. elements in VALP")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVQ,DBF_ULONG) {
		prompt("Num. elements in VALQ")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVR,DBF_ULONG) {
		prompt("Num. elements in VALR")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVS,DBF_ULONG) {
		prompt("Num. elements in VALS")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVT,DBF_ULONG) {
		prompt("Num. elements in VALT")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NEVU,DBF_ULONG) {
		prompt("Num. elements in VALU")
		initial("1")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ONVA,DBF_ULONG) {
		prompt("Num. elements in OVLA")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVB,DBF_ULONG) {
		prompt("Num. elements in OVLB")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVC,DBF_ULONG) {
		prompt("Num. elements in OVLC")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVD,DBF_ULONG) {
		prompt("Num. elements in OVLD")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVE,DBF_ULONG) {
		prompt("Num. elements in OVLE")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVF,DBF_ULONG) {
		prompt("Num. elements in OVLF")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVG,DBF_ULONG) {
		prompt("Num. elements in OVLG")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVH,DBF_ULONG) {
		prompt("Num. elements in VAlH")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVI,DBF_ULONG) {
		prompt("Num. elements in OVLI")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVJ,DBF_ULONG) {
		prompt("Num. elements in OVLJ")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVK,DBF_ULONG) {
		prompt("Num. elements in OVLK")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVL,DBF_ULONG) {
		prompt("Num. elements in OVLL")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVM,DBF_ULONG) {
		prompt("Num. elements in OVLM")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVN,DBF_ULONG) {
		prompt("Num. elements in OVLN")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVO,DBF_ULONG) {
		prompt("Num. elements in OVLO")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVP,DBF_ULONG) {
		prompt("Num. elements in OVLP")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVQ,DBF_ULONG) {
		prompt("Num. elements in OVLQ")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVR,DBF_ULONG) {
		prompt("Num. elements in OVLR")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVS,DBF_ULONG) {
		prompt("Num. elements in OVLS")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVT,DBF_ULONG) {
		prompt("Num. elements in OVLT")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
	field(ONVU,DBF_ULONG) {
		prompt("Num. elements in OVLU")
		initial("1")
		special(SPC_NOMOD)
		interest(4)
	}
}
recordtype(bi) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(VAL,DBF_ENUM) {
		prompt("Current Value")
		promptgroup(GUI_INPUTS)
		pp(TRUE)
		asl(ASL0)
	}
	field(ZSV,DBF_MENU) {
		prompt("Zero Error Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(OSV,DBF_MENU) {
		prompt("One Error Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(COSV,DBF_MENU) {
		prompt("Change of State Svr")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(ZNAM,DBF_STRING) {
		prompt("Zero Name")
		promptgroup(GUI_CALC)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(ONAM,DBF_STRING) {
		prompt("One Name")
		promptgroup(GUI_CLOCK)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(RVAL,DBF_ULONG) {
		prompt("Raw Value")
		pp(TRUE)
	}
	field(ORAW,DBF_ULONG) {
		prompt("prev Raw Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MASK,DBF_ULONG) {
		prompt("Hardware Mask")
		special(SPC_NOMOD)
		interest(1)
	}
	field(LALM,DBF_USHORT) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_USHORT) {
		prompt("Last Value Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SIOL,DBF_INLINK) {
		prompt("Sim Input Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SVAL,DBF_ULONG) {
		prompt("Simulation Value")
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuSimm)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
}
recordtype(bo) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_ENUM) {
		prompt("Current Value")
		promptgroup(GUI_OUTPUT)
		pp(TRUE)
		asl(ASL0)
	}
	field(OMSL,DBF_MENU) {
		prompt("Output Mode Select")
		promptgroup(GUI_OUTPUT)
		menu(menuOmsl)
		interest(1)
	}
	field(DOL,DBF_INLINK) {
		prompt("Desired Output Loc")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUT,DBF_OUTLINK) {
		prompt("Output Specification")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(HIGH,DBF_DOUBLE) {
		prompt("Seconds to Hold High")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(ZNAM,DBF_STRING) {
		prompt("Zero Name")
		promptgroup(GUI_DISPLAY)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(ONAM,DBF_STRING) {
		prompt("One Name")
		promptgroup(GUI_DISPLAY)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(RVAL,DBF_ULONG) {
		prompt("Raw Value")
		pp(TRUE)
	}
	field(ORAW,DBF_ULONG) {
		prompt("prev Raw Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MASK,DBF_ULONG) {
		prompt("Hardware Mask")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPVT,DBF_NOACCESS) {
		prompt("Record Private")
		special(SPC_NOMOD)
		extra("void *  rpvt")
		interest(4)
	}
	field(WDPT,DBF_NOACCESS) {
		prompt("Watch Dog Timer ID")
		special(SPC_NOMOD)
		extra("void *	wdpt")
		interest(4)
	}
	field(ZSV,DBF_MENU) {
		prompt("Zero Error Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(OSV,DBF_MENU) {
		prompt("One Error Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(COSV,DBF_MENU) {
		prompt("Change of State Sevr")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(RBV,DBF_ULONG) {
		prompt("Readback Value")
		special(SPC_NOMOD)
	}
	field(ORBV,DBF_ULONG) {
		prompt("Prev Readback Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_USHORT) {
		prompt("Last Value Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LALM,DBF_USHORT) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SIOL,DBF_OUTLINK) {
		prompt("Sim Output Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(IVOA,DBF_MENU) {
		prompt("INVALID outpt action")
		promptgroup(GUI_OUTPUT)
		menu(menuIvoa)
		interest(2)
	}
	field(IVOV,DBF_USHORT) {
		prompt("INVALID output value")
		promptgroup(GUI_OUTPUT)
		interest(2)
	}
}
recordtype(calc) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_DOUBLE) {
		prompt("Result")
		asl(ASL0)
	}
	field(CALC,DBF_STRING) {
		prompt("Calculation")
		initial("0")
		promptgroup(GUI_CALC)
		special(103)
		size(80)
		pp(TRUE)
	}
	field(INPA,DBF_INLINK) {
		prompt("Input A")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPB,DBF_INLINK) {
		prompt("Input B")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPC,DBF_INLINK) {
		prompt("Input C")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPD,DBF_INLINK) {
		prompt("Input D")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPE,DBF_INLINK) {
		prompt("Input E")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPF,DBF_INLINK) {
		prompt("Input F")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPG,DBF_INLINK) {
		prompt("Input G")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPH,DBF_INLINK) {
		prompt("Input H")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPI,DBF_INLINK) {
		prompt("Input I")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPJ,DBF_INLINK) {
		prompt("Input J")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPK,DBF_INLINK) {
		prompt("Input K")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(INPL,DBF_INLINK) {
		prompt("Input L")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Units Name")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Rng")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(HIHI,DBF_DOUBLE) {
		prompt("Hihi Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOLO,DBF_DOUBLE) {
		prompt("Lolo Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HIGH,DBF_DOUBLE) {
		prompt("High Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOW,DBF_DOUBLE) {
		prompt("Low Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HHSV,DBF_MENU) {
		prompt("Hihi Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LLSV,DBF_MENU) {
		prompt("Lolo Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HSV,DBF_MENU) {
		prompt("High Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LSV,DBF_MENU) {
		prompt("Low Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HYST,DBF_DOUBLE) {
		prompt("Alarm Deadband")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(ADEL,DBF_DOUBLE) {
		prompt("Archive Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(MDEL,DBF_DOUBLE) {
		prompt("Monitor Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(A,DBF_DOUBLE) {
		prompt("Value of Input A")
		pp(TRUE)
	}
	field(B,DBF_DOUBLE) {
		prompt("Value of Input B")
		pp(TRUE)
	}
	field(C,DBF_DOUBLE) {
		prompt("Value of Input C")
		pp(TRUE)
	}
	field(D,DBF_DOUBLE) {
		prompt("Value of Input D")
		pp(TRUE)
	}
	field(E,DBF_DOUBLE) {
		prompt("Value of Input E")
		pp(TRUE)
	}
	field(F,DBF_DOUBLE) {
		prompt("Value of Input F")
		pp(TRUE)
	}
	field(G,DBF_DOUBLE) {
		prompt("Value of Input G")
		pp(TRUE)
	}
	field(H,DBF_DOUBLE) {
		prompt("Value of Input H")
		pp(TRUE)
	}
	field(I,DBF_DOUBLE) {
		prompt("Value of Input I")
		pp(TRUE)
	}
	field(J,DBF_DOUBLE) {
		prompt("Value of Input J")
		pp(TRUE)
	}
	field(K,DBF_DOUBLE) {
		prompt("Value of Input K")
		pp(TRUE)
	}
	field(L,DBF_DOUBLE) {
		prompt("Value of Input L")
		pp(TRUE)
	}
	field(LA,DBF_DOUBLE) {
		prompt("Prev Value of A")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LB,DBF_DOUBLE) {
		prompt("Prev Value of B")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LC,DBF_DOUBLE) {
		prompt("Prev Value of C")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LD,DBF_DOUBLE) {
		prompt("Prev Value of D")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LE,DBF_DOUBLE) {
		prompt("Prev Value of E")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LF,DBF_DOUBLE) {
		prompt("Prev Value of F")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LG,DBF_DOUBLE) {
		prompt("Prev Value of G")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LH,DBF_DOUBLE) {
		prompt("Prev Value of H")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LI,DBF_DOUBLE) {
		prompt("Prev Value of I")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LJ,DBF_DOUBLE) {
		prompt("Prev Value of J")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LK,DBF_DOUBLE) {
		prompt("Prev Value of K")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LL,DBF_DOUBLE) {
		prompt("Prev Value of L")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LALM,DBF_DOUBLE) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ALST,DBF_DOUBLE) {
		prompt("Last Value Archived")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_DOUBLE) {
		prompt("Last Val Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(RPCL,DBF_NOACCESS) {
		prompt("Reverse Polish Calc")
		special(SPC_NOMOD)
		extra("char	rpcl[INFIX_TO_POSTFIX_SIZE(80)]")
		interest(4)
	}
}
recordtype(calcout) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(RPVT,DBF_NOACCESS) {
		prompt("Record Private")
		special(SPC_NOMOD)
		extra("struct rpvtStruct *rpvt")
		interest(4)
	}
	field(VAL,DBF_DOUBLE) {
		prompt("Result")
		promptgroup(GUI_OUTPUT)
		asl(ASL0)
	}
	field(PVAL,DBF_DOUBLE) {
		prompt("Previous Value")
	}
	field(CALC,DBF_STRING) {
		prompt("Calculation")
		initial("0")
		promptgroup(GUI_CALC)
		special(103)
		size(80)
		pp(TRUE)
	}
	field(CLCV,DBF_LONG) {
		prompt("CALC Valid")
		interest(1)
	}
	field(INPA,DBF_INLINK) {
		prompt("Input A")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPB,DBF_INLINK) {
		prompt("Input B")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPC,DBF_INLINK) {
		prompt("Input C")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPD,DBF_INLINK) {
		prompt("Input D")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPE,DBF_INLINK) {
		prompt("Input E")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPF,DBF_INLINK) {
		prompt("Input F")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPG,DBF_INLINK) {
		prompt("Input G")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPH,DBF_INLINK) {
		prompt("Input H")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPI,DBF_INLINK) {
		prompt("Input I")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPJ,DBF_INLINK) {
		prompt("Input J")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPK,DBF_INLINK) {
		prompt("Input K")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(INPL,DBF_INLINK) {
		prompt("Input L")
		promptgroup(GUI_CALC)
		special(100)
		interest(1)
	}
	field(OUT,DBF_OUTLINK) {
		prompt("Output Specification")
		promptgroup(GUI_OUTPUT)
		special(100)
		interest(1)
	}
	field(INAV,DBF_MENU) {
		prompt("INPA PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INBV,DBF_MENU) {
		prompt("INPB PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INCV,DBF_MENU) {
		prompt("INPC PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INDV,DBF_MENU) {
		prompt("INPD PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INEV,DBF_MENU) {
		prompt("INPE PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INFV,DBF_MENU) {
		prompt("INPF PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INGV,DBF_MENU) {
		prompt("INPG PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INHV,DBF_MENU) {
		prompt("INPH PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INIV,DBF_MENU) {
		prompt("INPI PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INJV,DBF_MENU) {
		prompt("INPJ PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INKV,DBF_MENU) {
		prompt("INPK PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(INLV,DBF_MENU) {
		prompt("INPL PV Status")
		initial("1")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(OUTV,DBF_MENU) {
		prompt("OUT PV Status")
		special(SPC_NOMOD)
		menu(calcoutINAV)
		interest(1)
	}
	field(OOPT,DBF_MENU) {
		prompt("Output Execute Opt")
		promptgroup(GUI_CALC)
		menu(calcoutOOPT)
		interest(1)
	}
	field(ODLY,DBF_DOUBLE) {
		prompt("Output Execute Delay")
		promptgroup(GUI_ALARMS)
		interest(1)
		asl(ASL0)
	}
	field(DLYA,DBF_USHORT) {
		prompt("Output Delay Active")
		special(SPC_NOMOD)
		asl(ASL0)
	}
	field(DOPT,DBF_MENU) {
		prompt("Output Data Opt")
		promptgroup(GUI_CALC)
		menu(calcoutDOPT)
		interest(1)
	}
	field(OCAL,DBF_STRING) {
		prompt("Output Calculation")
		initial("0")
		promptgroup(GUI_CALC)
		special(103)
		size(80)
		pp(TRUE)
	}
	field(OCLV,DBF_LONG) {
		prompt("OCAL Valid")
		interest(1)
	}
	field(OEVT,DBF_USHORT) {
		prompt("Event To Issue")
		promptgroup(GUI_CLOCK)
		asl(ASL0)
	}
	field(IVOA,DBF_MENU) {
		prompt("INVALID output action")
		promptgroup(GUI_OUTPUT)
		menu(menuIvoa)
		interest(2)
	}
	field(IVOV,DBF_DOUBLE) {
		prompt("INVALID output value")
		promptgroup(GUI_OUTPUT)
		interest(2)
	}
	field(EGU,DBF_STRING) {
		prompt("Units Name")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Rng")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(HIHI,DBF_DOUBLE) {
		prompt("Hihi Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOLO,DBF_DOUBLE) {
		prompt("Lolo Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HIGH,DBF_DOUBLE) {
		prompt("High Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOW,DBF_DOUBLE) {
		prompt("Low Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HHSV,DBF_MENU) {
		prompt("Hihi Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LLSV,DBF_MENU) {
		prompt("Lolo Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HSV,DBF_MENU) {
		prompt("High Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LSV,DBF_MENU) {
		prompt("Low Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HYST,DBF_DOUBLE) {
		prompt("Alarm Deadband")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(ADEL,DBF_DOUBLE) {
		prompt("Archive Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(MDEL,DBF_DOUBLE) {
		prompt("Monitor Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(A,DBF_DOUBLE) {
		prompt("Value of Input A")
		pp(TRUE)
	}
	field(B,DBF_DOUBLE) {
		prompt("Value of Input B")
		pp(TRUE)
	}
	field(C,DBF_DOUBLE) {
		prompt("Value of Input C")
		pp(TRUE)
	}
	field(D,DBF_DOUBLE) {
		prompt("Value of Input D")
		pp(TRUE)
	}
	field(E,DBF_DOUBLE) {
		prompt("Value of Input E")
		pp(TRUE)
	}
	field(F,DBF_DOUBLE) {
		prompt("Value of Input F")
		pp(TRUE)
	}
	field(G,DBF_DOUBLE) {
		prompt("Value of Input G")
		pp(TRUE)
	}
	field(H,DBF_DOUBLE) {
		prompt("Value of Input H")
		pp(TRUE)
	}
	field(I,DBF_DOUBLE) {
		prompt("Value of Input I")
		pp(TRUE)
	}
	field(J,DBF_DOUBLE) {
		prompt("Value of Input J")
		pp(TRUE)
	}
	field(K,DBF_DOUBLE) {
		prompt("Value of Input K")
		pp(TRUE)
	}
	field(L,DBF_DOUBLE) {
		prompt("Value of Input L")
		pp(TRUE)
	}
	field(OVAL,DBF_DOUBLE) {
		prompt("Output Value")
		asl(ASL0)
	}
	field(LA,DBF_DOUBLE) {
		prompt("Prev Value of A")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LB,DBF_DOUBLE) {
		prompt("Prev Value of B")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LC,DBF_DOUBLE) {
		prompt("Prev Value of C")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LD,DBF_DOUBLE) {
		prompt("Prev Value of D")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LE,DBF_DOUBLE) {
		prompt("Prev Value of E")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LF,DBF_DOUBLE) {
		prompt("Prev Value of F")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LG,DBF_DOUBLE) {
		prompt("Prev Value of G")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LH,DBF_DOUBLE) {
		prompt("Prev Value of H")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LI,DBF_DOUBLE) {
		prompt("Prev Value of I")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LJ,DBF_DOUBLE) {
		prompt("Prev Value of J")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LK,DBF_DOUBLE) {
		prompt("Prev Value of K")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LL,DBF_DOUBLE) {
		prompt("Prev Value of L")
		special(SPC_NOMOD)
		interest(3)
	}
	field(POVL,DBF_DOUBLE) {
		prompt("Prev Value of OVAL")
		asl(ASL0)
	}
	field(LALM,DBF_DOUBLE) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ALST,DBF_DOUBLE) {
		prompt("Last Value Archived")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_DOUBLE) {
		prompt("Last Val Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(RPCL,DBF_NOACCESS) {
		prompt("Reverse Polish Calc")
		special(SPC_NOMOD)
		extra("char	rpcl[INFIX_TO_POSTFIX_SIZE(80)]")
		interest(4)
	}
	field(ORPC,DBF_NOACCESS) {
		prompt("Reverse Polish OCalc")
		special(SPC_NOMOD)
		extra("char	orpc[INFIX_TO_POSTFIX_SIZE(80)]")
		interest(4)
	}
}
recordtype(compress) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_NOACCESS) {
		prompt("Value")
		special(SPC_DBADDR)
		extra("void *		val")
		pp(TRUE)
		asl(ASL0)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_COMPRESS)
		interest(1)
	}
	field(RES,DBF_SHORT) {
		prompt("Reset")
		special(101)
		interest(3)
		asl(ASL0)
	}
	field(ALG,DBF_MENU) {
		prompt("Compression Algorithm")
		promptgroup(GUI_ALARMS)
		special(101)
		menu(compressALG)
		interest(1)
	}
	field(NSAM,DBF_ULONG) {
		prompt("Number of Values")
		initial("1")
		promptgroup(GUI_COMPRESS)
		special(SPC_NOMOD)
		interest(1)
	}
	field(N,DBF_ULONG) {
		prompt("N to 1 Compression")
		initial("1")
		promptgroup(GUI_COMPRESS)
		special(101)
		interest(1)
	}
	field(IHIL,DBF_DOUBLE) {
		prompt("Init High Interest Lim")
		promptgroup(GUI_COMPRESS)
		interest(1)
	}
	field(ILIL,DBF_DOUBLE) {
		prompt("Init Low Interest Lim")
		promptgroup(GUI_COMPRESS)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("EngineeringUnits")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(OFF,DBF_ULONG) {
		prompt("Offset")
		special(SPC_NOMOD)
	}
	field(NUSE,DBF_ULONG) {
		prompt("Number Used")
		special(SPC_NOMOD)
	}
	field(OUSE,DBF_ULONG) {
		prompt("Old Number Used")
		special(SPC_NOMOD)
	}
	field(BPTR,DBF_NOACCESS) {
		prompt("Buffer Pointer")
		special(SPC_NOMOD)
		extra("double		*bptr")
		interest(4)
	}
	field(SPTR,DBF_NOACCESS) {
		prompt("Summing Buffer Ptr")
		special(SPC_NOMOD)
		extra("double		*sptr")
		interest(4)
	}
	field(WPTR,DBF_NOACCESS) {
		prompt("Working Buffer Ptr")
		special(SPC_NOMOD)
		extra("double		*wptr")
		interest(4)
	}
	field(INPN,DBF_LONG) {
		prompt("Number of elements in Working Buffer")
		special(SPC_NOMOD)
		interest(4)
	}
	field(CVB,DBF_DOUBLE) {
		prompt("Compress Value Buffer")
		special(SPC_NOMOD)
		interest(3)
	}
	field(INX,DBF_ULONG) {
		prompt("Compressed Array Inx")
		special(SPC_NOMOD)
		interest(3)
	}
}
recordtype(dfanout) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_DOUBLE) {
		prompt("Desired Output")
		pp(TRUE)
		asl(ASL0)
	}
	field(SELM,DBF_MENU) {
		prompt("Select Mechanism")
		promptgroup(GUI_LINKS)
		menu(dfanoutSELM)
		interest(1)
	}
	field(SELN,DBF_USHORT) {
		prompt("Link Selection")
		initial("1")
		interest(1)
	}
	field(SELL,DBF_INLINK) {
		prompt("Link Selection Loc")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(OUTA,DBF_OUTLINK) {
		prompt("Output Spec A")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTB,DBF_OUTLINK) {
		prompt("Output Spec B")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTC,DBF_OUTLINK) {
		prompt("Output Spec C")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTD,DBF_OUTLINK) {
		prompt("Output Spec D")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTE,DBF_OUTLINK) {
		prompt("Output Spec E")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTF,DBF_OUTLINK) {
		prompt("Output Spec F")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTG,DBF_OUTLINK) {
		prompt("Output Spec G")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OUTH,DBF_OUTLINK) {
		prompt("Output Spec H")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(DOL,DBF_INLINK) {
		prompt("Desired Output Loc")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(OMSL,DBF_MENU) {
		prompt("Output Mode Select")
		promptgroup(GUI_OUTPUT)
		menu(menuOmsl)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Units name")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(HIHI,DBF_DOUBLE) {
		prompt("Hihi Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOLO,DBF_DOUBLE) {
		prompt("Lolo Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HIGH,DBF_DOUBLE) {
		prompt("High Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOW,DBF_DOUBLE) {
		prompt("Low Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HHSV,DBF_MENU) {
		prompt("Hihi Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LLSV,DBF_MENU) {
		prompt("Lolo Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HSV,DBF_MENU) {
		prompt("High Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LSV,DBF_MENU) {
		prompt("Low Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HYST,DBF_DOUBLE) {
		prompt("Alarm Deadband")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(ADEL,DBF_DOUBLE) {
		prompt("Archive Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(MDEL,DBF_DOUBLE) {
		prompt("Monitor Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LALM,DBF_DOUBLE) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ALST,DBF_DOUBLE) {
		prompt("Last Value Archived")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_DOUBLE) {
		prompt("Last Val Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
}
recordtype(event) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_USHORT) {
		prompt("Event Number To Post")
		promptgroup(GUI_INPUTS)
		asl(ASL0)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIOL,DBF_INLINK) {
		prompt("Sim Input Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SVAL,DBF_USHORT) {
		prompt("Simulation Value")
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
}
recordtype(fanout) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_LONG) {
		prompt("Used to trigger")
		pp(TRUE)
		asl(ASL0)
	}
	field(SELM,DBF_MENU) {
		prompt("Select Mechanism")
		promptgroup(GUI_LINKS)
		menu(fanoutSELM)
		interest(1)
	}
	field(SELN,DBF_USHORT) {
		prompt("Link Selection")
		initial("1")
		interest(1)
	}
	field(SELL,DBF_INLINK) {
		prompt("Link Selection Loc")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(LNK1,DBF_FWDLINK) {
		prompt("Forward Link 1")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(LNK2,DBF_FWDLINK) {
		prompt("Forward Link 2")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(LNK3,DBF_FWDLINK) {
		prompt("Forward Link 3")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(LNK4,DBF_FWDLINK) {
		prompt("Forward Link 4")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(LNK5,DBF_FWDLINK) {
		prompt("Forward Link 5")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(LNK6,DBF_FWDLINK) {
		prompt("Forward Link 6")
		promptgroup(GUI_LINKS)
		interest(1)
	}
}
recordtype(longin) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_LONG) {
		prompt("Current value")
		promptgroup(GUI_INPUTS)
		pp(TRUE)
		asl(ASL0)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Units name")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(HOPR,DBF_LONG) {
		prompt("High Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_LONG) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(HIHI,DBF_LONG) {
		prompt("Hihi Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOLO,DBF_LONG) {
		prompt("Lolo Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HIGH,DBF_LONG) {
		prompt("High Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOW,DBF_LONG) {
		prompt("Low Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HHSV,DBF_MENU) {
		prompt("Hihi Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LLSV,DBF_MENU) {
		prompt("Lolo Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HSV,DBF_MENU) {
		prompt("High Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LSV,DBF_MENU) {
		prompt("Low Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HYST,DBF_LONG) {
		prompt("Alarm Deadband")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(ADEL,DBF_LONG) {
		prompt("Archive Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(MDEL,DBF_LONG) {
		prompt("Monitor Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LALM,DBF_LONG) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ALST,DBF_LONG) {
		prompt("Last Value Archived")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_LONG) {
		prompt("Last Val Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SIOL,DBF_INLINK) {
		prompt("Sim Input Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SVAL,DBF_LONG) {
		prompt("Simulation Value")
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
}
recordtype(longout) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_LONG) {
		prompt("Desired Output")
		promptgroup(GUI_OUTPUT)
		pp(TRUE)
		asl(ASL0)
	}
	field(OUT,DBF_OUTLINK) {
		prompt("Output Specification")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(DOL,DBF_INLINK) {
		prompt("Desired Output Loc")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OMSL,DBF_MENU) {
		prompt("Output Mode Select")
		promptgroup(GUI_OUTPUT)
		menu(menuOmsl)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Units name")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(DRVH,DBF_LONG) {
		prompt("Drive High Limit")
		promptgroup(GUI_OUTPUT)
		pp(TRUE)
		interest(1)
	}
	field(DRVL,DBF_LONG) {
		prompt("Drive Low Limit")
		promptgroup(GUI_OUTPUT)
		pp(TRUE)
		interest(1)
	}
	field(HOPR,DBF_LONG) {
		prompt("High Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_LONG) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(HIHI,DBF_LONG) {
		prompt("Hihi Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOLO,DBF_LONG) {
		prompt("Lolo Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HIGH,DBF_LONG) {
		prompt("High Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOW,DBF_LONG) {
		prompt("Low Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HHSV,DBF_MENU) {
		prompt("Hihi Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LLSV,DBF_MENU) {
		prompt("Lolo Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HSV,DBF_MENU) {
		prompt("High Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LSV,DBF_MENU) {
		prompt("Low Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HYST,DBF_LONG) {
		prompt("Alarm Deadband")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(ADEL,DBF_LONG) {
		prompt("Archive Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(MDEL,DBF_LONG) {
		prompt("Monitor Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LALM,DBF_LONG) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ALST,DBF_LONG) {
		prompt("Last Value Archived")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_LONG) {
		prompt("Last Val Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SIOL,DBF_OUTLINK) {
		prompt("Sim Output Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(IVOA,DBF_MENU) {
		prompt("INVALID output action")
		promptgroup(GUI_OUTPUT)
		menu(menuIvoa)
		interest(2)
	}
	field(IVOV,DBF_LONG) {
		prompt("INVALID output value")
		promptgroup(GUI_OUTPUT)
		interest(2)
	}
}
recordtype(mbbi) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_ENUM) {
		prompt("Current Value")
		promptgroup(GUI_INPUTS)
		pp(TRUE)
		asl(ASL0)
	}
	field(NOBT,DBF_SHORT) {
		prompt("Number of Bits")
		promptgroup(GUI_MBB)
		special(SPC_NOMOD)
		interest(1)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(ZRVL,DBF_ULONG) {
		prompt("Zero Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(ONVL,DBF_ULONG) {
		prompt("One Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(TWVL,DBF_ULONG) {
		prompt("Two Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(THVL,DBF_ULONG) {
		prompt("Three Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(FRVL,DBF_ULONG) {
		prompt("Four Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(FVVL,DBF_ULONG) {
		prompt("Five Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(SXVL,DBF_ULONG) {
		prompt("Six Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(SVVL,DBF_ULONG) {
		prompt("Seven Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(EIVL,DBF_ULONG) {
		prompt("Eight Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(NIVL,DBF_ULONG) {
		prompt("Nine Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(TEVL,DBF_ULONG) {
		prompt("Ten Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(ELVL,DBF_ULONG) {
		prompt("Eleven Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(TVVL,DBF_ULONG) {
		prompt("Twelve Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(TTVL,DBF_ULONG) {
		prompt("Thirteen Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(FTVL,DBF_ULONG) {
		prompt("Fourteen Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(FFVL,DBF_ULONG) {
		prompt("Fifteen Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(ZRST,DBF_STRING) {
		prompt("Zero String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(ONST,DBF_STRING) {
		prompt("One String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(TWST,DBF_STRING) {
		prompt("Two String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(THST,DBF_STRING) {
		prompt("Three String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(FRST,DBF_STRING) {
		prompt("Four String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(FVST,DBF_STRING) {
		prompt("Five String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(SXST,DBF_STRING) {
		prompt("Six String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(SVST,DBF_STRING) {
		prompt("Seven String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(EIST,DBF_STRING) {
		prompt("Eight String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(NIST,DBF_STRING) {
		prompt("Nine String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(TEST,DBF_STRING) {
		prompt("Ten String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(ELST,DBF_STRING) {
		prompt("Eleven String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(TVST,DBF_STRING) {
		prompt("Twelve String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(TTST,DBF_STRING) {
		prompt("Thirteen String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(FTST,DBF_STRING) {
		prompt("Fourteen String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(FFST,DBF_STRING) {
		prompt("Fifteen String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(ZRSV,DBF_MENU) {
		prompt("State Zero Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(ONSV,DBF_MENU) {
		prompt("State One Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(TWSV,DBF_MENU) {
		prompt("State Two Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(THSV,DBF_MENU) {
		prompt("State Three Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(FRSV,DBF_MENU) {
		prompt("State Four Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(FVSV,DBF_MENU) {
		prompt("State Five Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(SXSV,DBF_MENU) {
		prompt("State Six Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(SVSV,DBF_MENU) {
		prompt("State Seven Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(EISV,DBF_MENU) {
		prompt("State Eight Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(NISV,DBF_MENU) {
		prompt("State Nine Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(TESV,DBF_MENU) {
		prompt("State Ten Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(ELSV,DBF_MENU) {
		prompt("State Eleven Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(TVSV,DBF_MENU) {
		prompt("State Twelve Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(TTSV,DBF_MENU) {
		prompt("State Thirteen Sevr")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(FTSV,DBF_MENU) {
		prompt("State Fourteen Sevr")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(FFSV,DBF_MENU) {
		prompt("State Fifteen Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(UNSV,DBF_MENU) {
		prompt("Unknown State Severity")
		promptgroup(GUI_MBB)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(COSV,DBF_MENU) {
		prompt("Change of State Svr")
		promptgroup(GUI_MBB)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(RVAL,DBF_ULONG) {
		prompt("Raw Value")
		pp(TRUE)
	}
	field(ORAW,DBF_ULONG) {
		prompt("Prev Raw Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MASK,DBF_ULONG) {
		prompt("Hardware Mask")
		special(SPC_NOMOD)
		interest(1)
	}
	field(MLST,DBF_USHORT) {
		prompt("Last Value Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LALM,DBF_USHORT) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SDEF,DBF_SHORT) {
		prompt("States Defined")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SHFT,DBF_USHORT) {
		prompt("Shift")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SIOL,DBF_INLINK) {
		prompt("Sim Input Specifctn")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SVAL,DBF_ULONG) {
		prompt("Simulation Value")
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuSimm)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_MBB)
		menu(menuAlarmSevr)
		interest(2)
	}
}
recordtype(mbbiDirect) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_USHORT) {
		prompt("Current Value")
		promptgroup(GUI_INPUTS)
		pp(TRUE)
		asl(ASL0)
	}
	field(NOBT,DBF_SHORT) {
		prompt("Number of Bits")
		promptgroup(GUI_MBB)
		special(SPC_NOMOD)
		interest(1)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(RVAL,DBF_ULONG) {
		prompt("Raw Value")
		pp(TRUE)
	}
	field(ORAW,DBF_ULONG) {
		prompt("Prev Raw Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MASK,DBF_ULONG) {
		prompt("Hardware Mask")
		special(SPC_NOMOD)
		interest(1)
	}
	field(MLST,DBF_USHORT) {
		prompt("Last Value Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LALM,DBF_USHORT) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SDEF,DBF_SHORT) {
		prompt("States Defined")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SHFT,DBF_USHORT) {
		prompt("Shift")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SIOL,DBF_INLINK) {
		prompt("Sim Input Specifctn")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SVAL,DBF_ULONG) {
		prompt("Simulation Value")
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuSimm)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_MBB)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(B0,DBF_UCHAR) {
		prompt("Bit 0")
		pp(TRUE)
		interest(1)
	}
	field(B1,DBF_UCHAR) {
		prompt("Bit 1")
		pp(TRUE)
		interest(1)
	}
	field(B2,DBF_UCHAR) {
		prompt("Bit 2")
		pp(TRUE)
		interest(1)
	}
	field(B3,DBF_UCHAR) {
		prompt("Bit 3")
		pp(TRUE)
		interest(1)
	}
	field(B4,DBF_UCHAR) {
		prompt("Bit 4")
		pp(TRUE)
		interest(1)
	}
	field(B5,DBF_UCHAR) {
		prompt("Bit 5")
		pp(TRUE)
		interest(1)
	}
	field(B6,DBF_UCHAR) {
		prompt("Bit 6")
		pp(TRUE)
		interest(1)
	}
	field(B7,DBF_UCHAR) {
		prompt("Bit 7")
		pp(TRUE)
		interest(1)
	}
	field(B8,DBF_UCHAR) {
		prompt("Bit 8")
		pp(TRUE)
		interest(1)
	}
	field(B9,DBF_UCHAR) {
		prompt("Bit 9")
		pp(TRUE)
		interest(1)
	}
	field(BA,DBF_UCHAR) {
		prompt("Bit A")
		pp(TRUE)
		interest(1)
	}
	field(BB,DBF_UCHAR) {
		prompt("Bit B")
		pp(TRUE)
		interest(1)
	}
	field(BC,DBF_UCHAR) {
		prompt("Bit C")
		pp(TRUE)
		interest(1)
	}
	field(BD,DBF_UCHAR) {
		prompt("Bit D")
		pp(TRUE)
		interest(1)
	}
	field(BE,DBF_UCHAR) {
		prompt("Bit E")
		pp(TRUE)
		interest(1)
	}
	field(BF,DBF_UCHAR) {
		prompt("Bit F")
		pp(TRUE)
		interest(1)
	}
}
recordtype(mbbo) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_ENUM) {
		prompt("Desired Value")
		promptgroup(GUI_OUTPUT)
		special(SPC_DBADDR)
		pp(TRUE)
		asl(ASL0)
	}
	field(DOL,DBF_INLINK) {
		prompt("Desired Output Loc")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(OMSL,DBF_MENU) {
		prompt("Output Mode Select")
		promptgroup(GUI_MBB)
		menu(menuOmsl)
		interest(1)
	}
	field(NOBT,DBF_SHORT) {
		prompt("Number of Bits")
		promptgroup(GUI_MBB)
		special(SPC_NOMOD)
		interest(1)
	}
	field(OUT,DBF_OUTLINK) {
		prompt("Output Specification")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(ZRVL,DBF_ULONG) {
		prompt("Zero Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(ONVL,DBF_ULONG) {
		prompt("One Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(TWVL,DBF_ULONG) {
		prompt("Two Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(THVL,DBF_ULONG) {
		prompt("Three Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(FRVL,DBF_ULONG) {
		prompt("Four Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(FVVL,DBF_ULONG) {
		prompt("Five Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(SXVL,DBF_ULONG) {
		prompt("Six Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(SVVL,DBF_ULONG) {
		prompt("Seven Value")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(EIVL,DBF_ULONG) {
		prompt("Eight Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(NIVL,DBF_ULONG) {
		prompt("Nine Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(TEVL,DBF_ULONG) {
		prompt("Ten Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(ELVL,DBF_ULONG) {
		prompt("Eleven Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(TVVL,DBF_ULONG) {
		prompt("Twelve Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(TTVL,DBF_ULONG) {
		prompt("Thirteen Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(FTVL,DBF_ULONG) {
		prompt("Fourteen Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(FFVL,DBF_ULONG) {
		prompt("Fifteen Value")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		base(HEX)
		interest(1)
	}
	field(ZRST,DBF_STRING) {
		prompt("Zero String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(ONST,DBF_STRING) {
		prompt("One String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(TWST,DBF_STRING) {
		prompt("Two String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(THST,DBF_STRING) {
		prompt("Three String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(FRST,DBF_STRING) {
		prompt("Four String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(FVST,DBF_STRING) {
		prompt("Five String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(SXST,DBF_STRING) {
		prompt("Six String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(SVST,DBF_STRING) {
		prompt("Seven String")
		promptgroup(GUI_BITS1)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(EIST,DBF_STRING) {
		prompt("Eight String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(NIST,DBF_STRING) {
		prompt("Nine String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(TEST,DBF_STRING) {
		prompt("Ten String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(ELST,DBF_STRING) {
		prompt("Eleven String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(TVST,DBF_STRING) {
		prompt("Twelve String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(TTST,DBF_STRING) {
		prompt("Thirteen String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(FTST,DBF_STRING) {
		prompt("Fourteen String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(FFST,DBF_STRING) {
		prompt("Fifteen String")
		promptgroup(GUI_BITS2)
		special(100)
		size(26)
		pp(TRUE)
		interest(1)
	}
	field(ZRSV,DBF_MENU) {
		prompt("State Zero Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(ONSV,DBF_MENU) {
		prompt("State One Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(TWSV,DBF_MENU) {
		prompt("State Two Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(THSV,DBF_MENU) {
		prompt("State Three Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(FRSV,DBF_MENU) {
		prompt("State Four Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(FVSV,DBF_MENU) {
		prompt("State Five Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(SXSV,DBF_MENU) {
		prompt("State Six Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(SVSV,DBF_MENU) {
		prompt("State Seven Severity")
		promptgroup(GUI_BITS1)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(EISV,DBF_MENU) {
		prompt("State Eight Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(NISV,DBF_MENU) {
		prompt("State Nine Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(TESV,DBF_MENU) {
		prompt("State Ten Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(ELSV,DBF_MENU) {
		prompt("State Eleven Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(TVSV,DBF_MENU) {
		prompt("State Twelve Severity")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(TTSV,DBF_MENU) {
		prompt("State Thirteen Sevr")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(FTSV,DBF_MENU) {
		prompt("State Fourteen Sevr")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(FFSV,DBF_MENU) {
		prompt("State Fifteen Sevr")
		promptgroup(GUI_BITS2)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(UNSV,DBF_MENU) {
		prompt("Unknown State Sevr")
		promptgroup(GUI_MBB)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(COSV,DBF_MENU) {
		prompt("Change of State Sevr")
		promptgroup(GUI_MBB)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(RVAL,DBF_ULONG) {
		prompt("Raw Value")
		pp(TRUE)
	}
	field(ORAW,DBF_ULONG) {
		prompt("Prev Raw Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(RBV,DBF_ULONG) {
		prompt("Readback Value")
		special(SPC_NOMOD)
	}
	field(ORBV,DBF_ULONG) {
		prompt("Prev Readback Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MASK,DBF_ULONG) {
		prompt("Hardware Mask")
		special(SPC_NOMOD)
		interest(1)
	}
	field(MLST,DBF_USHORT) {
		prompt("Last Value Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LALM,DBF_USHORT) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SDEF,DBF_SHORT) {
		prompt("States Defined")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SHFT,DBF_USHORT) {
		prompt("Shift")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SIOL,DBF_OUTLINK) {
		prompt("Sim Output Specifctn")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_MBB)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(IVOA,DBF_MENU) {
		prompt("INVALID outpt action")
		promptgroup(GUI_MBB)
		menu(menuIvoa)
		interest(2)
	}
	field(IVOV,DBF_USHORT) {
		prompt("INVALID output value")
		promptgroup(GUI_MBB)
		interest(2)
	}
}
recordtype(mbboDirect) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_USHORT) {
		prompt("Word")
		promptgroup(GUI_OUTPUT)
		pp(TRUE)
		asl(ASL0)
	}
	field(OMSL,DBF_MENU) {
		prompt("Output Mode Select")
		promptgroup(GUI_MBB)
		special(101)
		menu(menuOmsl)
		pp(TRUE)
		interest(1)
	}
	field(NOBT,DBF_SHORT) {
		prompt("Number of Bits")
		promptgroup(GUI_MBB)
		special(SPC_NOMOD)
		interest(1)
	}
	field(DOL,DBF_INLINK) {
		prompt("Desired Output Loc")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(OUT,DBF_OUTLINK) {
		prompt("Output Specification")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(B0,DBF_UCHAR) {
		prompt("Bit 0")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(B1,DBF_UCHAR) {
		prompt("Bit 1")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(B2,DBF_UCHAR) {
		prompt("Bit 2")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(B3,DBF_UCHAR) {
		prompt("Bit 3")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(B4,DBF_UCHAR) {
		prompt("Bit 4")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(B5,DBF_UCHAR) {
		prompt("Bit 5")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(B6,DBF_UCHAR) {
		prompt("Bit 6")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(B7,DBF_UCHAR) {
		prompt("Bit 7")
		promptgroup(GUI_BITS1)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(B8,DBF_UCHAR) {
		prompt("Bit 8")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(B9,DBF_UCHAR) {
		prompt("Bit 9")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(BA,DBF_UCHAR) {
		prompt("Bit 10")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(BB,DBF_UCHAR) {
		prompt("Bit 11")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(BC,DBF_UCHAR) {
		prompt("Bit 12")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(BD,DBF_UCHAR) {
		prompt("Bit 13")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(BE,DBF_UCHAR) {
		prompt("Bit 14")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(BF,DBF_UCHAR) {
		prompt("Bit 15")
		promptgroup(GUI_BITS2)
		special(100)
		pp(TRUE)
		interest(1)
	}
	field(RVAL,DBF_ULONG) {
		prompt("Raw Value")
		special(SPC_NOMOD)
		pp(TRUE)
	}
	field(ORAW,DBF_ULONG) {
		prompt("Prev Raw Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(RBV,DBF_ULONG) {
		prompt("Readback Value")
		special(SPC_NOMOD)
	}
	field(ORBV,DBF_ULONG) {
		prompt("Prev Readback Value")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MASK,DBF_ULONG) {
		prompt("Hardware Mask")
		special(SPC_NOMOD)
		interest(1)
	}
	field(MLST,DBF_ULONG) {
		prompt("Last Value Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LALM,DBF_ULONG) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(SHFT,DBF_ULONG) {
		prompt("Shift")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SIOL,DBF_OUTLINK) {
		prompt("Sim Output Specifctn")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_MBB)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_MBB)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(IVOA,DBF_MENU) {
		prompt("INVALID outpt action")
		promptgroup(GUI_MBB)
		menu(menuIvoa)
		interest(2)
	}
	field(IVOV,DBF_USHORT) {
		prompt("INVALID output value")
		promptgroup(GUI_MBB)
		interest(2)
	}
}
recordtype(permissive) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(LABL,DBF_STRING) {
		prompt("Button Label")
		promptgroup(GUI_DISPLAY)
		size(20)
		pp(TRUE)
		interest(1)
	}
	field(VAL,DBF_USHORT) {
		prompt("Status")
		pp(TRUE)
		asl(ASL0)
	}
	field(OVAL,DBF_USHORT) {
		prompt("Old Status")
		special(SPC_NOMOD)
		interest(3)
	}
	field(WFLG,DBF_USHORT) {
		prompt("Wait Flag")
		pp(TRUE)
	}
	field(OFLG,DBF_USHORT) {
		prompt("Old Flag")
		special(SPC_NOMOD)
		interest(3)
	}
}
recordtype(sel) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_DOUBLE) {
		prompt("Result")
		special(SPC_NOMOD)
		asl(ASL0)
	}
	field(SELM,DBF_MENU) {
		prompt("Select Mechanism")
		promptgroup(GUI_INPUTS)
		menu(selSELM)
	}
	field(SELN,DBF_USHORT) {
		prompt("Index value")
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(NVL,DBF_INLINK) {
		prompt("Index Value Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPA,DBF_INLINK) {
		prompt("Input A")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPB,DBF_INLINK) {
		prompt("Input B")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPC,DBF_INLINK) {
		prompt("Input C")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPD,DBF_INLINK) {
		prompt("Input D")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPE,DBF_INLINK) {
		prompt("Input E")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPF,DBF_INLINK) {
		prompt("Input F")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPG,DBF_INLINK) {
		prompt("Input G")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPH,DBF_INLINK) {
		prompt("Input H")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPI,DBF_INLINK) {
		prompt("Input I")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPJ,DBF_INLINK) {
		prompt("Input J")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPK,DBF_INLINK) {
		prompt("Input K")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(INPL,DBF_INLINK) {
		prompt("Input L")
		promptgroup(GUI_SELECT)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Units Name")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Rng")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(HIHI,DBF_DOUBLE) {
		prompt("Hihi Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOLO,DBF_DOUBLE) {
		prompt("Lolo Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HIGH,DBF_DOUBLE) {
		prompt("High Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOW,DBF_DOUBLE) {
		prompt("Low Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HHSV,DBF_MENU) {
		prompt("Hihi Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LLSV,DBF_MENU) {
		prompt("Lolo Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HSV,DBF_MENU) {
		prompt("High Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LSV,DBF_MENU) {
		prompt("Low Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HYST,DBF_DOUBLE) {
		prompt("Alarm Deadband")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(ADEL,DBF_DOUBLE) {
		prompt("Archive Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(MDEL,DBF_DOUBLE) {
		prompt("Monitor Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(A,DBF_DOUBLE) {
		prompt("Value of Input A")
		pp(TRUE)
	}
	field(B,DBF_DOUBLE) {
		prompt("Value of Input B")
		pp(TRUE)
	}
	field(C,DBF_DOUBLE) {
		prompt("Value of Input C")
		pp(TRUE)
	}
	field(D,DBF_DOUBLE) {
		prompt("Value of Input D")
		pp(TRUE)
	}
	field(E,DBF_DOUBLE) {
		prompt("Value of Input E")
		pp(TRUE)
	}
	field(F,DBF_DOUBLE) {
		prompt("Value of Input F")
		pp(TRUE)
	}
	field(G,DBF_DOUBLE) {
		prompt("Value of Input G")
		pp(TRUE)
	}
	field(H,DBF_DOUBLE) {
		prompt("Value of Input H")
		pp(TRUE)
	}
	field(I,DBF_DOUBLE) {
		prompt("Value of Input I")
		pp(TRUE)
	}
	field(J,DBF_DOUBLE) {
		prompt("Value of Input J")
		pp(TRUE)
	}
	field(K,DBF_DOUBLE) {
		prompt("Value of Input K")
		pp(TRUE)
	}
	field(L,DBF_DOUBLE) {
		prompt("Value of Input L")
		pp(TRUE)
	}
	field(LA,DBF_DOUBLE) {
		prompt("Prev Value of A")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LB,DBF_DOUBLE) {
		prompt("Prev Value of B")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LC,DBF_DOUBLE) {
		prompt("Prev Value of C")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LD,DBF_DOUBLE) {
		prompt("Prev Value of D")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LE,DBF_DOUBLE) {
		prompt("Prev Value of E")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LF,DBF_DOUBLE) {
		prompt("Prev Value of F")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LG,DBF_DOUBLE) {
		prompt("Prev Value of G")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LH,DBF_DOUBLE) {
		prompt("Prev Value of H")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LI,DBF_DOUBLE) {
		prompt("Prev Value of I")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LJ,DBF_DOUBLE) {
		prompt("Prev Value of J")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LK,DBF_DOUBLE) {
		prompt("Prev Value of K")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LL,DBF_DOUBLE) {
		prompt("Prev Value of L")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LALM,DBF_DOUBLE) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ALST,DBF_DOUBLE) {
		prompt("Last Value Archived")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_DOUBLE) {
		prompt("Last Val Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
	field(NLST,DBF_USHORT) {
		prompt("Last Index Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
}
recordtype(seq) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_LONG) {
		prompt("Used to trigger")
		pp(TRUE)
		asl(ASL0)
	}
	field(SELM,DBF_MENU) {
		prompt("Select Mechanism")
		promptgroup(GUI_INPUTS)
		menu(seqSELM)
		interest(1)
	}
	field(SELN,DBF_USHORT) {
		prompt("Link Selection")
		initial("1")
		interest(1)
	}
	field(SELL,DBF_INLINK) {
		prompt("Link Selection Loc")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(DLY1,DBF_DOUBLE) {
		prompt("Delay 1")
		promptgroup(GUI_SEQ1)
		interest(1)
	}
	field(DOL1,DBF_INLINK) {
		prompt("Input link1")
		promptgroup(GUI_SEQ1)
		interest(1)
	}
	field(DO1,DBF_DOUBLE) {
		prompt("Constant input 1")
		interest(1)
	}
	field(LNK1,DBF_OUTLINK) {
		prompt("Output Link 1")
		promptgroup(GUI_SEQ1)
		interest(1)
	}
	field(DLY2,DBF_DOUBLE) {
		prompt("Delay 2")
		promptgroup(GUI_SEQ1)
		interest(1)
	}
	field(DOL2,DBF_INLINK) {
		prompt("Input link 2")
		promptgroup(GUI_SEQ1)
		interest(1)
	}
	field(DO2,DBF_DOUBLE) {
		prompt("Constant input 2")
		interest(1)
	}
	field(LNK2,DBF_OUTLINK) {
		prompt("Output Link 2")
		promptgroup(GUI_SEQ1)
		interest(1)
	}
	field(DLY3,DBF_DOUBLE) {
		prompt("Delay 3")
		promptgroup(GUI_SEQ1)
		interest(1)
	}
	field(DOL3,DBF_INLINK) {
		prompt("Input link 3")
		promptgroup(GUI_SEQ1)
		interest(1)
	}
	field(DO3,DBF_DOUBLE) {
		prompt("Constant input 3")
		interest(1)
	}
	field(LNK3,DBF_OUTLINK) {
		prompt("Output Link 3")
		promptgroup(GUI_SEQ1)
		interest(1)
	}
	field(DLY4,DBF_DOUBLE) {
		prompt("Delay 4")
		promptgroup(GUI_SEQ2)
		interest(1)
	}
	field(DOL4,DBF_INLINK) {
		prompt("Input link 4")
		promptgroup(GUI_SEQ2)
		interest(1)
	}
	field(DO4,DBF_DOUBLE) {
		prompt("Constant input 4")
		interest(1)
	}
	field(LNK4,DBF_OUTLINK) {
		prompt("Output Link 4")
		promptgroup(GUI_SEQ2)
		interest(1)
	}
	field(DLY5,DBF_DOUBLE) {
		prompt("Delay 5")
		promptgroup(GUI_SEQ2)
		interest(1)
	}
	field(DOL5,DBF_INLINK) {
		prompt("Input link 5")
		promptgroup(GUI_SEQ2)
		interest(1)
	}
	field(DO5,DBF_DOUBLE) {
		prompt("Constant input 5")
		interest(1)
	}
	field(LNK5,DBF_OUTLINK) {
		prompt("Output Link 5")
		promptgroup(GUI_SEQ2)
		interest(1)
	}
	field(DLY6,DBF_DOUBLE) {
		prompt("Delay 6")
		promptgroup(GUI_SEQ2)
		interest(1)
	}
	field(DOL6,DBF_INLINK) {
		prompt("Input link 6")
		promptgroup(GUI_SEQ2)
		interest(1)
	}
	field(DO6,DBF_DOUBLE) {
		prompt("Constant input 6")
		interest(1)
	}
	field(LNK6,DBF_OUTLINK) {
		prompt("Output Link 6")
		promptgroup(GUI_SEQ2)
		interest(1)
	}
	field(DLY7,DBF_DOUBLE) {
		prompt("Delay 7")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DOL7,DBF_INLINK) {
		prompt("Input link 7")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DO7,DBF_DOUBLE) {
		prompt("Constant input 7")
		interest(1)
	}
	field(LNK7,DBF_OUTLINK) {
		prompt("Output Link 7")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DLY8,DBF_DOUBLE) {
		prompt("Delay 8")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DOL8,DBF_INLINK) {
		prompt("Input link 8")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DO8,DBF_DOUBLE) {
		prompt("Constant input 8")
		interest(1)
	}
	field(LNK8,DBF_OUTLINK) {
		prompt("Output Link 8")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DLY9,DBF_DOUBLE) {
		prompt("Delay 9")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DOL9,DBF_INLINK) {
		prompt("Input link 9")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DO9,DBF_DOUBLE) {
		prompt("Constant input 9")
		interest(1)
	}
	field(LNK9,DBF_OUTLINK) {
		prompt("Output Link 9")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DLYA,DBF_DOUBLE) {
		prompt("Delay 10")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DOLA,DBF_INLINK) {
		prompt("Input link 10")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
	field(DOA,DBF_DOUBLE) {
		prompt("Constant input 10")
		interest(1)
	}
	field(LNKA,DBF_OUTLINK) {
		prompt("Output Link 10")
		promptgroup(GUI_SEQ3)
		interest(1)
	}
}
recordtype(state) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_STRING) {
		prompt("Value")
		promptgroup(GUI_DISPLAY)
		size(20)
		pp(TRUE)
		asl(ASL0)
	}
	field(OVAL,DBF_STRING) {
		prompt("Prev Value")
		special(SPC_NOMOD)
		size(20)
		interest(3)
	}
}
recordtype(stringin) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_STRING) {
		prompt("Current Value")
		promptgroup(GUI_INPUTS)
		size(40)
		pp(TRUE)
		asl(ASL0)
	}
	field(OVAL,DBF_STRING) {
		prompt("Previous Value")
		special(SPC_NOMOD)
		size(40)
		interest(3)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(MPST,DBF_MENU) {
		prompt("Post Value Monitors")
		promptgroup(GUI_DISPLAY)
		menu(stringinPOST)
		interest(1)
	}
	field(APST,DBF_MENU) {
		prompt("Post Archive Monitors")
		promptgroup(GUI_DISPLAY)
		menu(stringinPOST)
		interest(1)
	}
	field(SIOL,DBF_INLINK) {
		prompt("Sim Input Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SVAL,DBF_STRING) {
		prompt("Simulation Value")
		size(40)
		pp(TRUE)
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
}
recordtype(stringout) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_STRING) {
		prompt("Current Value")
		promptgroup(GUI_OUTPUT)
		size(40)
		pp(TRUE)
		asl(ASL0)
	}
	field(OVAL,DBF_STRING) {
		prompt("Previous Value")
		special(SPC_NOMOD)
		size(40)
		interest(3)
	}
	field(DOL,DBF_INLINK) {
		prompt("Desired Output Loc")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(OMSL,DBF_MENU) {
		prompt("Output Mode Select")
		promptgroup(GUI_OUTPUT)
		menu(menuOmsl)
		interest(1)
	}
	field(OUT,DBF_OUTLINK) {
		prompt("Output Specification")
		promptgroup(GUI_OUTPUT)
		interest(1)
	}
	field(MPST,DBF_MENU) {
		prompt("Post Value Monitors")
		promptgroup(GUI_DISPLAY)
		menu(stringoutPOST)
		interest(1)
	}
	field(APST,DBF_MENU) {
		prompt("Post Archive Monitors")
		promptgroup(GUI_DISPLAY)
		menu(stringoutPOST)
		interest(1)
	}
	field(SIOL,DBF_OUTLINK) {
		prompt("Sim Output Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(IVOA,DBF_MENU) {
		prompt("INVALID output action")
		promptgroup(GUI_OUTPUT)
		menu(menuIvoa)
		interest(2)
	}
	field(IVOV,DBF_STRING) {
		prompt("INVALID output value")
		promptgroup(GUI_OUTPUT)
		size(40)
		interest(2)
	}
}
recordtype(sub) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_DOUBLE) {
		prompt("Result")
		pp(TRUE)
		asl(ASL0)
	}
	field(INAM,DBF_STRING) {
		prompt("Init Routine Name")
		promptgroup(GUI_SUB)
		special(SPC_NOMOD)
		size(40)
		interest(1)
	}
	field(SNAM,DBF_STRING) {
		prompt("Subroutine Name")
		promptgroup(GUI_SUB)
		special(100)
		size(40)
		interest(1)
	}
	field(SADR,DBF_NOACCESS) {
		prompt("Subroutine Address")
		special(SPC_NOMOD)
		extra("SUBFUNCPTR sadr")
		interest(4)
	}
	field(INPA,DBF_INLINK) {
		prompt("Input A")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPB,DBF_INLINK) {
		prompt("Input B")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPC,DBF_INLINK) {
		prompt("Input C")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPD,DBF_INLINK) {
		prompt("Input D")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPE,DBF_INLINK) {
		prompt("Input E")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPF,DBF_INLINK) {
		prompt("Input F")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPG,DBF_INLINK) {
		prompt("Input G")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPH,DBF_INLINK) {
		prompt("Input H")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPI,DBF_INLINK) {
		prompt("Input I")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPJ,DBF_INLINK) {
		prompt("Input J")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPK,DBF_INLINK) {
		prompt("Input K")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(INPL,DBF_INLINK) {
		prompt("Input L")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Units Name")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Rng")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(HIHI,DBF_DOUBLE) {
		prompt("Hihi Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOLO,DBF_DOUBLE) {
		prompt("Lolo Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(HIGH,DBF_DOUBLE) {
		prompt("High Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(LOW,DBF_DOUBLE) {
		prompt("Low Alarm Limit")
		promptgroup(GUI_ALARMS)
		pp(TRUE)
		interest(1)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(BRSV,DBF_MENU) {
		prompt("Bad Return Severity")
		promptgroup(GUI_SUB)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HHSV,DBF_MENU) {
		prompt("Hihi Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LLSV,DBF_MENU) {
		prompt("Lolo Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HSV,DBF_MENU) {
		prompt("High Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(LSV,DBF_MENU) {
		prompt("Low Severity")
		promptgroup(GUI_ALARMS)
		menu(menuAlarmSevr)
		pp(TRUE)
		interest(1)
	}
	field(HYST,DBF_DOUBLE) {
		prompt("Alarm Deadband")
		promptgroup(GUI_ALARMS)
		interest(1)
	}
	field(ADEL,DBF_DOUBLE) {
		prompt("Archive Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(MDEL,DBF_DOUBLE) {
		prompt("Monitor Deadband")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(A,DBF_DOUBLE) {
		prompt("Value of Input A")
		pp(TRUE)
	}
	field(B,DBF_DOUBLE) {
		prompt("Value of Input B")
		pp(TRUE)
	}
	field(C,DBF_DOUBLE) {
		prompt("Value of Input C")
		pp(TRUE)
	}
	field(D,DBF_DOUBLE) {
		prompt("Value of Input D")
		pp(TRUE)
	}
	field(E,DBF_DOUBLE) {
		prompt("Value of Input E")
		pp(TRUE)
	}
	field(F,DBF_DOUBLE) {
		prompt("Value of Input F")
		pp(TRUE)
	}
	field(G,DBF_DOUBLE) {
		prompt("Value of Input G")
		pp(TRUE)
	}
	field(H,DBF_DOUBLE) {
		prompt("Value of Input H")
		pp(TRUE)
	}
	field(I,DBF_DOUBLE) {
		prompt("Value of Input I")
		pp(TRUE)
	}
	field(J,DBF_DOUBLE) {
		prompt("Value of Input J")
		pp(TRUE)
	}
	field(K,DBF_DOUBLE) {
		prompt("Value of Input K")
		pp(TRUE)
	}
	field(L,DBF_DOUBLE) {
		prompt("Value of Input L")
		pp(TRUE)
	}
	field(LA,DBF_DOUBLE) {
		prompt("Prev Value of A")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LB,DBF_DOUBLE) {
		prompt("Prev Value of B")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LC,DBF_DOUBLE) {
		prompt("Prev Value of C")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LD,DBF_DOUBLE) {
		prompt("Prev Value of D")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LE,DBF_DOUBLE) {
		prompt("Prev Value of E")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LF,DBF_DOUBLE) {
		prompt("Prev Value of F")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LG,DBF_DOUBLE) {
		prompt("Prev Value of G")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LH,DBF_DOUBLE) {
		prompt("Prev Value of H")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LI,DBF_DOUBLE) {
		prompt("Prev Value of I")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LJ,DBF_DOUBLE) {
		prompt("Prev Value of J")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LK,DBF_DOUBLE) {
		prompt("Prev Value of K")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LL,DBF_DOUBLE) {
		prompt("Prev Value of L")
		special(SPC_NOMOD)
		interest(3)
	}
	field(LALM,DBF_DOUBLE) {
		prompt("Last Value Alarmed")
		special(SPC_NOMOD)
		interest(3)
	}
	field(ALST,DBF_DOUBLE) {
		prompt("Last Value Archived")
		special(SPC_NOMOD)
		interest(3)
	}
	field(MLST,DBF_DOUBLE) {
		prompt("Last Value Monitored")
		special(SPC_NOMOD)
		interest(3)
	}
}
recordtype(subArray) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_NOACCESS) {
		prompt("Value")
		special(SPC_DBADDR)
		extra("void *		val")
		pp(TRUE)
		asl(ASL0)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_COMMON)
		interest(1)
	}
	field(FTVL,DBF_MENU) {
		prompt("Field Type of Value")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_BITS1)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Engineering Units Name")
		promptgroup(GUI_BITS2)
		size(16)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Range")
		promptgroup(GUI_CALC)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_CLOCK)
		interest(1)
	}
	field(MALM,DBF_ULONG) {
		prompt("Maximum Elements  ")
		initial("1")
		promptgroup(GUI_CLOCK)
		special(SPC_NOMOD)
		interest(1)
	}
	field(NELM,DBF_ULONG) {
		prompt("Number of Elements")
		initial("1")
		promptgroup(GUI_COMPRESS)
		pp(TRUE)
	}
	field(INDX,DBF_ULONG) {
		prompt("Substring Index")
		promptgroup(GUI_CONVERT)
		pp(TRUE)
	}
	field(BUSY,DBF_SHORT) {
		prompt("Busy Indicator")
		special(SPC_NOMOD)
	}
	field(NORD,DBF_LONG) {
		prompt("Number elements read")
		special(SPC_NOMOD)
	}
	field(BPTR,DBF_NOACCESS) {
		prompt("Buffer Pointer")
		special(SPC_NOMOD)
		extra("void *		bptr")
		interest(4)
	}
}
recordtype(waveform) {
	field(NAME,DBF_STRING) {
		prompt("Record Name")
		special(SPC_NOMOD)
		size(61)
	}
	field(DESC,DBF_STRING) {
		prompt("Descriptor")
		promptgroup(GUI_COMMON)
		size(41)
	}
	field(ASG,DBF_STRING) {
		prompt("Access Security Group")
		promptgroup(GUI_COMMON)
		special(SPC_AS)
		size(29)
	}
	field(SCAN,DBF_MENU) {
		prompt("Scan Mechanism")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuScan)
		interest(1)
	}
	field(PINI,DBF_MENU) {
		prompt("Process at iocInit")
		promptgroup(GUI_SCAN)
		menu(menuPini)
		interest(1)
	}
	field(PHAS,DBF_SHORT) {
		prompt("Scan Phase")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(EVNT,DBF_SHORT) {
		prompt("Event Number")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		interest(1)
	}
	field(TSE,DBF_SHORT) {
		prompt("Time Stamp Event")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(TSEL,DBF_INLINK) {
		prompt("Time Stamp Link")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(DTYP,DBF_DEVICE) {
		prompt("Device Type")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(DISV,DBF_SHORT) {
		prompt("Disable Value")
		initial("1")
		promptgroup(GUI_SCAN)
	}
	field(DISA,DBF_SHORT) {
		prompt("Disable")
	}
	field(SDIS,DBF_INLINK) {
		prompt("Scanning Disable")
		promptgroup(GUI_SCAN)
		interest(1)
	}
	field(MLOK,DBF_NOACCESS) {
		prompt("Monitor lock")
		special(SPC_NOMOD)
		extra("epicsMutexId	mlok")
		interest(4)
	}
	field(MLIS,DBF_NOACCESS) {
		prompt("Monitor List")
		special(SPC_NOMOD)
		extra("ELLLIST		mlis")
		interest(4)
	}
	field(DISP,DBF_UCHAR) {
		prompt("Disable putField")
	}
	field(PROC,DBF_UCHAR) {
		prompt("Force Processing")
		pp(TRUE)
		interest(3)
	}
	field(STAT,DBF_MENU) {
		prompt("Alarm Status")
		initial("UDF")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
	}
	field(SEVR,DBF_MENU) {
		prompt("Alarm Severity")
		initial("INVALID")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
	}
	field(NSTA,DBF_MENU) {
		prompt("New Alarm Status")
		special(SPC_NOMOD)
		menu(menuAlarmStat)
		interest(2)
	}
	field(NSEV,DBF_MENU) {
		prompt("New Alarm Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKS,DBF_MENU) {
		prompt("Alarm Ack Severity")
		special(SPC_NOMOD)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(ACKT,DBF_MENU) {
		prompt("Alarm Ack Transient")
		initial("YES")
		promptgroup(GUI_ALARMS)
		special(SPC_NOMOD)
		menu(menuYesNo)
		interest(2)
	}
	field(DISS,DBF_MENU) {
		prompt("Disable Alarm Sevrty")
		promptgroup(GUI_SCAN)
		menu(menuAlarmSevr)
		interest(1)
	}
	field(LCNT,DBF_UCHAR) {
		prompt("Lock Count")
		special(SPC_NOMOD)
		interest(2)
	}
	field(PACT,DBF_UCHAR) {
		prompt("Record active")
		special(SPC_NOMOD)
		interest(1)
	}
	field(PUTF,DBF_UCHAR) {
		prompt("dbPutField process")
		special(SPC_NOMOD)
		interest(1)
	}
	field(RPRO,DBF_UCHAR) {
		prompt("Reprocess ")
		special(SPC_NOMOD)
		interest(1)
	}
	field(ASP,DBF_NOACCESS) {
		prompt("Access Security Pvt")
		special(SPC_NOMOD)
		extra("struct asgMember *asp")
		interest(4)
	}
	field(PPN,DBF_NOACCESS) {
		prompt("addr of PUTNOTIFY")
		special(SPC_NOMOD)
		extra("struct putNotify *ppn")
		interest(4)
	}
	field(PPNR,DBF_NOACCESS) {
		prompt("pputNotifyRecord")
		special(SPC_NOMOD)
		extra("struct putNotifyRecord *ppnr")
		interest(4)
	}
	field(SPVT,DBF_NOACCESS) {
		prompt("Scan Private")
		special(SPC_NOMOD)
		extra("struct scan_element *spvt")
		interest(4)
	}
	field(RSET,DBF_NOACCESS) {
		prompt("Address of RSET")
		special(SPC_NOMOD)
		extra("struct rset	*rset")
		interest(4)
	}
	field(DSET,DBF_NOACCESS) {
		prompt("DSET address")
		special(SPC_NOMOD)
		extra("struct dset	*dset")
		interest(4)
	}
	field(DPVT,DBF_NOACCESS) {
		prompt("Device Private")
		special(SPC_NOMOD)
		extra("void		*dpvt")
		interest(4)
	}
	field(RDES,DBF_NOACCESS) {
		prompt("Address of dbRecordType")
		special(SPC_NOMOD)
		extra("struct dbRecordType *rdes")
		interest(4)
	}
	field(LSET,DBF_NOACCESS) {
		prompt("Lock Set")
		special(SPC_NOMOD)
		extra("struct lockRecord *lset")
		interest(4)
	}
	field(PRIO,DBF_MENU) {
		prompt("Scheduling Priority")
		promptgroup(GUI_SCAN)
		special(SPC_SCAN)
		menu(menuPriority)
		interest(1)
	}
	field(TPRO,DBF_UCHAR) {
		prompt("Trace Processing")
	}
	field(BKPT,DBF_NOACCESS) {
		prompt("Break Point")
		special(SPC_NOMOD)
		extra("char bkpt")
		interest(1)
	}
	field(UDF,DBF_UCHAR) {
		prompt("Undefined")
		initial("1")
		promptgroup(GUI_COMMON)
		pp(TRUE)
		interest(1)
	}
	field(TIME,DBF_NOACCESS) {
		prompt("Time")
		special(SPC_NOMOD)
		extra("epicsTimeStamp	time")
		interest(2)
	}
	field(FLNK,DBF_FWDLINK) {
		prompt("Forward Process Link")
		promptgroup(GUI_LINKS)
		interest(1)
	}
	field(VAL,DBF_NOACCESS) {
		prompt("Value")
		special(SPC_DBADDR)
		extra("void *		val")
		pp(TRUE)
		asl(ASL0)
	}
	field(RARM,DBF_SHORT) {
		prompt("Rearm the waveform")
		promptgroup(GUI_WAVE)
		pp(TRUE)
		interest(1)
	}
	field(PREC,DBF_SHORT) {
		prompt("Display Precision")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(INP,DBF_INLINK) {
		prompt("Input Specification")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(EGU,DBF_STRING) {
		prompt("Engineering Units Name")
		promptgroup(GUI_DISPLAY)
		size(16)
		interest(1)
	}
	field(HOPR,DBF_DOUBLE) {
		prompt("High Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(LOPR,DBF_DOUBLE) {
		prompt("Low Operating Range")
		promptgroup(GUI_DISPLAY)
		interest(1)
	}
	field(NELM,DBF_ULONG) {
		prompt("Number of Elements")
		initial("1")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		interest(1)
	}
	field(FTVL,DBF_MENU) {
		prompt("Field Type of Value")
		promptgroup(GUI_WAVE)
		special(SPC_NOMOD)
		menu(menuFtype)
		interest(1)
	}
	field(BUSY,DBF_SHORT) {
		prompt("Busy Indicator")
		special(SPC_NOMOD)
	}
	field(NORD,DBF_ULONG) {
		prompt("Number elements read")
		special(SPC_NOMOD)
	}
	field(BPTR,DBF_NOACCESS) {
		prompt("Buffer Pointer")
		special(SPC_NOMOD)
		extra("void *		bptr")
		interest(4)
	}
	field(SIOL,DBF_INLINK) {
		prompt("Sim Input Specifctn")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIML,DBF_INLINK) {
		prompt("Sim Mode Location")
		promptgroup(GUI_INPUTS)
		interest(1)
	}
	field(SIMM,DBF_MENU) {
		prompt("Simulation Mode")
		menu(menuYesNo)
		interest(1)
	}
	field(SIMS,DBF_MENU) {
		prompt("Sim mode Alarm Svrty")
		promptgroup(GUI_INPUTS)
		menu(menuAlarmSevr)
		interest(2)
	}
	field(MPST,DBF_MENU) {
		prompt("Post Value Monitors")
		promptgroup(GUI_DISPLAY)
		menu(waveformPOST)
		interest(1)
	}
	field(APST,DBF_MENU) {
		prompt("Post Archive Monitors")
		promptgroup(GUI_DISPLAY)
		menu(waveformPOST)
		interest(1)
	}
	field(HASH,DBF_ULONG) {
		prompt("Hash of OnChange data.")
		interest(3)
	}
}
device(aai,CONSTANT,devAaiSoft,"Soft Channel")
device(aao,CONSTANT,devAaoSoft,"Soft Channel")
device(ai,CONSTANT,devAiSoft,"Soft Channel")
device(ai,CONSTANT,devAiSoftRaw,"Raw Soft Channel")
device(ai,INST_IO,devTimestampAI,"Soft Timestamp")
device(ai,INST_IO,devAiGeneralTime,"General Time")
device(ai,CONSTANT,devcaDIMInterfaceSoft,"caDIMInterface")
device(ao,CONSTANT,devAoSoft,"Soft Channel")
device(ao,CONSTANT,devAoSoftRaw,"Raw Soft Channel")
device(ao,CONSTANT,devAoSoftCallback,"Async Soft Channel")
device(ao,CONSTANT,devcaDIMInterfaceSoft,"caDIMInterface")
device(bi,CONSTANT,devBiSoft,"Soft Channel")
device(bi,CONSTANT,devBiSoftRaw,"Raw Soft Channel")
device(bo,CONSTANT,devBoSoft,"Soft Channel")
device(bo,CONSTANT,devBoSoftRaw,"Raw Soft Channel")
device(bo,CONSTANT,devBoSoftCallback,"Async Soft Channel")
device(bo,INST_IO,devBoGeneralTime,"General Time")
device(calcout,CONSTANT,devCalcoutSoft,"Soft Channel")
device(calcout,CONSTANT,devCalcoutSoftCallback,"Async Soft Channel")
device(event,CONSTANT,devEventSoft,"Soft Channel")
device(longin,CONSTANT,devLiSoft,"Soft Channel")
device(longin,INST_IO,devLiGeneralTime,"General Time")
device(longout,CONSTANT,devLoSoft,"Soft Channel")
device(longout,CONSTANT,devLoSoftCallback,"Async Soft Channel")
device(mbbi,CONSTANT,devMbbiSoft,"Soft Channel")
device(mbbi,CONSTANT,devMbbiSoftRaw,"Raw Soft Channel")
device(mbbiDirect,CONSTANT,devMbbiDirectSoft,"Soft Channel")
device(mbbiDirect,CONSTANT,devMbbiDirectSoftRaw,"Raw Soft Channel")
device(mbbo,CONSTANT,devMbboSoft,"Soft Channel")
device(mbbo,CONSTANT,devMbboSoftRaw,"Raw Soft Channel")
device(mbbo,CONSTANT,devMbboSoftCallback,"Async Soft Channel")
device(mbboDirect,CONSTANT,devMbboDirectSoft,"Soft Channel")
device(mbboDirect,CONSTANT,devMbboDirectSoftRaw,"Raw Soft Channel")
device(mbboDirect,CONSTANT,devMbboDirectSoftCallback,"Async Soft Channel")
device(stringin,CONSTANT,devSiSoft,"Soft Channel")
device(stringin,INST_IO,devTimestampSI,"Soft Timestamp")
device(stringin,INST_IO,devSiGeneralTime,"General Time")
device(stringout,CONSTANT,devSoSoft,"Soft Channel")
device(stringout,CONSTANT,devSoSoftCallback,"Async Soft Channel")
device(stringout,INST_IO,devSoStdio,"stdio")
device(subArray,CONSTANT,devSASoft,"Soft Channel")
device(waveform,CONSTANT,devWfSoft,"Soft Channel")
registrar(asSub)
variable(asCaDebug,int)
variable(dbRecordsOnceOnly,int)
variable(dbBptNotMonotonic,int)
