diff --git a/src/rec/Makefile b/src/rec/Makefile index 5a442c42d..5360906db 100644 --- a/src/rec/Makefile +++ b/src/rec/Makefile @@ -10,10 +10,6 @@ TOP=../.. include $(TOP)/configure/CONFIG -INC += egDefs.h -INC += erDefs.h -INC += ereventDefs.h - DBDINC += aaiRecord DBDINC += aaoRecord DBDINC += aiRecord @@ -24,10 +20,6 @@ DBDINC += calcRecord DBDINC += calcoutRecord DBDINC += compressRecord DBDINC += dfanoutRecord -DBDINC += egRecord -DBDINC += egeventRecord -DBDINC += erRecord -DBDINC += ereventRecord DBDINC += eventRecord DBDINC += fanoutRecord DBDINC += histogramRecord @@ -57,10 +49,6 @@ LIBSRCS += calcRecord.c LIBSRCS += calcoutRecord.c LIBSRCS += compressRecord.c LIBSRCS += dfanoutRecord.c -LIBSRCS += egRecord.c -LIBSRCS += egeventRecord.c -LIBSRCS += erRecord.c -LIBSRCS += ereventRecord.c LIBSRCS += eventRecord.c LIBSRCS += fanoutRecord.c LIBSRCS += histogramRecord.c diff --git a/src/rec/egDefs.h b/src/rec/egDefs.h deleted file mode 100644 index f9adde8ea..000000000 --- a/src/rec/egDefs.h +++ /dev/null @@ -1,48 +0,0 @@ -/*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne -* National Laboratory. -* Copyright (c) 2002 The Regents of the University of California, as -* Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. -\*************************************************************************/ -/* $Id$ */ -#ifndef EPICS_EGDEFS_H -#define EPICS_EGDEFS_H - -typedef long (*EG_PROC_FUN)(struct egRecord *prec); -typedef long (*EG_INIT_REC_FUN)(struct egRecord *prec); -typedef long (*EG_INIT_DEV_FUN)(int pass); -typedef struct -{ - long number; - DEVSUPFUN report; - EG_INIT_DEV_FUN init; - EG_INIT_REC_FUN initRec; - DEVSUPFUN get_ioint_info; - EG_PROC_FUN proc; -} EgDsetStruct; - -#define EG_SEQ_RAM_SIZE (1024*32) - -#define EG_SEQ_RAM_EVENT_NULL 0 -#define EG_SEQ_RAM_EVENT_END 127 -#define EG_SEQ_RAM_EVENT_FREEZE 126 -#define EG_SEQ_RAM_EVENT_RESET_TIME 125 -#define EG_SEQ_RAM_EVENT_TICK_TIME 124 -#define EG_SEQ_RAM_EVENT_RESET_PRESCALE 123 -#define EG_SEQ_RAM_EVENT_HEARTBEAT 122 - -#define REC_EGEVENT_UNIT_TICKS (0) -#define REC_EGEVENT_UNIT_FORTNIGHTS (1) -#define REC_EGEVENT_UNIT_WEEKS (2) -#define REC_EGEVENT_UNIT_DAYS (3) -#define REC_EGEVENT_UNIT_HOURS (4) -#define REC_EGEVENT_UNIT_MINUITES (5) -#define REC_EGEVENT_UNIT_SECONDS (6) -#define REC_EGEVENT_UNIT_MILLISECONDS (7) -#define REC_EGEVENT_UNIT_MICROSECONDS (8) -#define REC_EGEVENT_UNIT_NANOSECONDS (9) - -#endif diff --git a/src/rec/egRecord.c b/src/rec/egRecord.c deleted file mode 100644 index 3b3da2f38..000000000 --- a/src/rec/egRecord.c +++ /dev/null @@ -1,157 +0,0 @@ -/*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne -* National Laboratory. -* Copyright (c) 2002 The Regents of the University of California, as -* Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. -\*************************************************************************/ -/* - * - * Author: John Winans - * Date: 8/27/93 - * - */ - -#include -#include -#include -#include -#include - -#include "dbDefs.h" -#include "epicsPrint.h" -#include "alarm.h" -#include "dbAccess.h" -#include "dbEvent.h" -#include "dbFldTypes.h" -#include "devSup.h" -#include "errMdef.h" -#include "recSup.h" -#include "recGbl.h" - -#define GEN_SIZE_OFFSET -#include "egRecord.h" -#undef GEN_SIZE_OFFSET -#include "egDefs.h" -#include "epicsExport.h" - -#define STATIC static - -STATIC void EgMonitor(struct egRecord *pRec); - -/* Create RSET - Record Support Entry Table*/ -#define report NULL -#define initialize NULL -STATIC long EgInitRec(struct egRecord *, int); -STATIC long EgProc(struct egRecord *); -#define special NULL -#define get_value NULL -#define cvt_dbaddr NULL -#define get_array_info NULL -#define put_array_info NULL -#define get_units NULL -#define get_precision NULL -#define get_enum_str NULL -#define get_enum_strs NULL -#define put_enum_str NULL -#define get_graphic_double NULL -#define get_control_double NULL -#define get_alarm_double NULL - -rset egRSET={ - RSETNUMBER, - report, - initialize, - EgInitRec, - EgProc, - special, - get_value, - cvt_dbaddr, - get_array_info, - put_array_info, - get_units, - get_precision, - get_enum_str, - get_enum_strs, - put_enum_str, - get_graphic_double, - get_control_double, - get_alarm_double -}; -epicsExportAddress(rset,egRSET); - - - -STATIC long EgInitRec(struct egRecord *pRec, int pass) -{ - EgDsetStruct *pDset = (EgDsetStruct *) pRec->dset; - - if (pass == 1) - { - /* Init the card via driver calls */ - /* Make sure we have a usable device support module */ - if (pDset == NULL) - { - recGblRecordError(S_dev_noDSET,(void *)pRec, "eg: EgInitRec"); - return(S_dev_noDSET); - } - if (pDset->number < 5) - { - recGblRecordError(S_dev_missingSup,(void *)pRec, "eg: EgInitRec"); - return(S_dev_missingSup); - } - if( pDset->initRec != NULL) - return(*pDset->initRec)(pRec); - } - pRec->taxi = 0; - - return(0); -} -/****************************************************************************** - ******************************************************************************/ -STATIC long EgProc(struct egRecord *pRec) -{ - EgDsetStruct *pDset = (EgDsetStruct *) pRec->dset; - - pRec->pact=TRUE; - - pRec->ltax = pRec->taxi; /* The only monitorable field we can change */ - - if (pRec->tpro > 10) - printf("recEg::EgProc(%s) entered\n", pRec->name); - - if (pDset->proc != NULL) - (*pDset->proc)(pRec); - - /* Take care of time stamps and such */ - pRec->udf=FALSE; - /*tsLocalTime(&pRec->time);*/ - recGblGetTimeStamp(pRec); - - /* Deal with monitor stuff */ - EgMonitor(pRec); - /* process the forward scan link record */ - recGblFwdLink(pRec); - - pRec->pact=FALSE; - return(0); -} - -/****************************************************************************** - * - ******************************************************************************/ -STATIC void EgMonitor(struct egRecord *pRec) -{ - unsigned short monitor_mask; - - monitor_mask = recGblResetAlarms(pRec); - monitor_mask |= (DBE_VALUE | DBE_LOG); - db_post_events(pRec, &pRec->val, monitor_mask); - - if (pRec->taxi != pRec->ltax) - db_post_events(pRec, &pRec->taxi, monitor_mask); - - return; -} diff --git a/src/rec/egRecord.dbd b/src/rec/egRecord.dbd deleted file mode 100644 index c7873ed8f..000000000 --- a/src/rec/egRecord.dbd +++ /dev/null @@ -1,293 +0,0 @@ -#************************************************************************* -# Copyright (c) 2002 The University of Chicago, as Operator of Argonne -# National Laboratory. -# Copyright (c) 2002 The Regents of the University of California, as -# Operator of Los Alamos National Laboratory. -# EPICS BASE Versions 3.13.7 -# and higher are distributed subject to a Software License Agreement found -# in file LICENSE that is included with this distribution. -#************************************************************************* -menu(egMOD1) { - choice(egMOD1_Off,"Off") - choice(egMOD1_Normal,"Normal") - choice(egMOD1_Normal_Recycle,"Normal Recycle") - choice(egMOD1_Single,"Single") - choice(egMOD1_Alternate,"Alternate") -} -recordtype(eg) { - include "dbCommon.dbd" - field(OUT,DBF_OUTLINK) { - prompt("Output Specification") - promptgroup(GUI_OUTPUT) - interest(1) - } - field(MOD1,DBF_MENU) { - prompt("RAM 1 Operating Mode") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(egMOD1) - } - field(R1SP,DBF_DOUBLE) { - prompt("RAM 1 Clock (Hz)") - promptgroup(GUI_DISPLAY) - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(MOD2,DBF_MENU) { - prompt("RAM 2 Operating Mode") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(egMOD1) - } - field(R2SP,DBF_DOUBLE) { - prompt("RAM 2 Clock (Hz)") - promptgroup(GUI_DISPLAY) - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(LMD1,DBF_MENU) { - prompt("Last Operating Mode1") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - menu(egMOD1) - } - field(LMD2,DBF_MENU) { - prompt("Last Operating Mode2") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - menu(egMOD1) - } - field(FIFO,DBF_MENU) { - prompt("Input FIFO Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(LFFO,DBF_MENU) { - prompt("Last FIFO Enable") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(CLR1,DBF_CHAR) { - prompt("Clear Sequence 1") - pp(TRUE) - interest(1) - } - field(CLR2,DBF_CHAR) { - prompt("Clear Sequence 2") - pp(TRUE) - interest(1) - } - field(TRG1,DBF_CHAR) { - prompt("Trigger Sequence 1") - pp(TRUE) - interest(1) - } - field(TRG2,DBF_CHAR) { - prompt("Trigger Sequence 2") - pp(TRUE) - interest(1) - } - field(ENAB,DBF_MENU) { - prompt("Master Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(LENA,DBF_LONG) { - prompt("Last Master Enable") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(TAXI,DBF_LONG) { - prompt("Taxi Violation") - interest(1) - } - field(LTAX,DBF_LONG) { - prompt("Last Taxi Violation") - special(SPC_NOMOD) - interest(1) - } - field(VME,DBF_LONG) { - prompt("Generate VME Event") - pp(TRUE) - interest(1) - } - field(ETE0,DBF_MENU) { - prompt("Trigger 0 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(ET0,DBF_LONG) { - prompt("Trigger 0 Event") - promptgroup(GUI_DISPLAY) - pp(TRUE) - base(HEX) - interest(1) - } - field(LET0,DBF_LONG) { - prompt("Last Trigger 0 Event") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(ETE1,DBF_MENU) { - prompt("Trigger 1 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(ET1,DBF_LONG) { - prompt("Trigger 1 Event") - promptgroup(GUI_DISPLAY) - pp(TRUE) - base(HEX) - interest(1) - } - field(LET1,DBF_LONG) { - prompt("Last Trigger 1 Event") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(ETE2,DBF_MENU) { - prompt("Trigger 2 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(ET2,DBF_LONG) { - prompt("Trigger 2 Event") - promptgroup(GUI_DISPLAY) - pp(TRUE) - base(HEX) - interest(1) - } - field(LET2,DBF_LONG) { - prompt("Last Trigger 2 Event") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(ETE3,DBF_MENU) { - prompt("Trigger 3 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(ET3,DBF_LONG) { - prompt("Trigger 3 Event") - promptgroup(GUI_DISPLAY) - pp(TRUE) - base(HEX) - interest(1) - } - field(LET3,DBF_LONG) { - prompt("Last Trigger 3 Event") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(ETE4,DBF_MENU) { - prompt("Trigger 4 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(ET4,DBF_LONG) { - prompt("Trigger 4 Event") - promptgroup(GUI_DISPLAY) - pp(TRUE) - base(HEX) - interest(1) - } - field(LET4,DBF_LONG) { - prompt("Last Trigger 4 Event") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(ETE5,DBF_MENU) { - prompt("Trigger 5 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(ET5,DBF_LONG) { - prompt("Trigger 5 Event") - promptgroup(GUI_DISPLAY) - pp(TRUE) - base(HEX) - interest(1) - } - field(LET5,DBF_LONG) { - prompt("Last Trigger 5 Event") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(ETE6,DBF_MENU) { - prompt("Trigger 6 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(ET6,DBF_LONG) { - prompt("Trigger 6 Event") - promptgroup(GUI_DISPLAY) - pp(TRUE) - base(HEX) - interest(1) - } - field(LET6,DBF_LONG) { - prompt("Last Trigger 6 Event") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(ETE7,DBF_MENU) { - prompt("Trigger 7 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(ET7,DBF_LONG) { - prompt("Trigger 7 Event") - promptgroup(GUI_DISPLAY) - pp(TRUE) - base(HEX) - interest(1) - } - field(LET7,DBF_LONG) { - prompt("Last Trigger 7 Event") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(VAL,DBF_CHAR) { - prompt("Worthless Value") - asl(ASL0) - special(SPC_NOMOD) - interest(1) - } -} diff --git a/src/rec/egeventRecord.c b/src/rec/egeventRecord.c deleted file mode 100644 index fccd25395..000000000 --- a/src/rec/egeventRecord.c +++ /dev/null @@ -1,221 +0,0 @@ -/*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne -* National Laboratory. -* Copyright (c) 2002 The Regents of the University of California, as -* Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. -\*************************************************************************/ -/* - * Author: John Winans - * Date: 8/27/93 - * - */ - -#include -#include -#include -#include -#include - -#include "dbDefs.h" -#include "epicsPrint.h" -#include "alarm.h" -#include "dbAccess.h" -#include "dbEvent.h" -#include "dbFldTypes.h" -#include "devSup.h" -#include "errMdef.h" -#include "recSup.h" -#include "recGbl.h" - -#include "egRecord.h" -#define GEN_SIZE_OFFSET -#include "egeventRecord.h" -#undef GEN_SIZE_OFFSET -#include "egDefs.h" -#include "epicsExport.h" - -#define STATIC static - -STATIC void EgEventMonitor(struct egeventRecord *pRec); - -/* Create RSET - Record Support Entry Table*/ -#define report NULL -#define initialize NULL -STATIC long EgEventInitRec(struct egeventRecord *, int); -STATIC long EgEventProc(struct egeventRecord *); -#define special NULL -#define get_value NULL -#define cvt_dbaddr NULL -#define get_array_info NULL -#define put_array_info NULL -#define get_units NULL -#define get_precision NULL -#define get_enum_str NULL -#define get_enum_strs NULL -#define put_enum_str NULL -static long get_graphic_double(struct dbAddr *paddr, struct dbr_grDouble *pgd); -static long get_control_double(struct dbAddr *paddr, struct dbr_ctrlDouble *pcd); -static long get_alarm_double(struct dbAddr *paddr, struct dbr_alDouble *pad); - -rset egeventRSET={ - RSETNUMBER, - report, - initialize, - EgEventInitRec, - EgEventProc, - special, - get_value, - cvt_dbaddr, - get_array_info, - put_array_info, - get_units, - get_precision, - get_enum_str, - get_enum_strs, - put_enum_str, - get_graphic_double, - get_control_double, - get_alarm_double -}; -epicsExportAddress(rset,egeventRSET); - - - -STATIC long EgEventInitRec(struct egeventRecord *pRec, int pass) -{ - EgDsetStruct *pDset = (EgDsetStruct *) pRec->dset; - -printf("EgEventInitRec(%s, %d)\n", pRec->name, pass); - if (pass == 1) - { - /* Init the card via driver calls */ - /* Make sure we have a usable device support module */ - if (pDset == NULL) - { - recGblRecordError(S_dev_noDSET,(void *)pRec, "eg: EgEventInitRec"); - return(S_dev_noDSET); - } - if (pDset->number < 5) - { - recGblRecordError(S_dev_missingSup,(void *)pRec, "eg: EgEventInitRec"); - return(S_dev_missingSup); - } - if( pDset->initRec != NULL) - return(*pDset->initRec)((void *)pRec); - } - return(0); -} -/****************************************************************************** - ******************************************************************************/ -STATIC long EgEventProc(struct egeventRecord *pRec) -{ - EgDsetStruct *pDset = (EgDsetStruct *) pRec->dset; - - pRec->pact=TRUE; - - if (pRec->tpro > 10) - printf("recEgEvent::EgEventProc(%s) entered\n", pRec->name); - - if (pDset->proc) - (*pDset->proc)((void *)pRec); - - /* Take care of time stamps and such */ - pRec->udf=FALSE; - /* tsLocalTime(&pRec->time);*/ - recGblGetTimeStamp(pRec); - - /* Deal with monitor stuff */ - EgEventMonitor(pRec); - /* process the forward scan link record */ - recGblFwdLink(pRec); - - pRec->pact=FALSE; - return(0); -} - -/****************************************************************************** - * - ******************************************************************************/ -STATIC void EgEventMonitor(struct egeventRecord *pRec) -{ - unsigned short monitor_mask; - - monitor_mask = recGblResetAlarms(pRec); - monitor_mask |= (DBE_VALUE | DBE_LOG); - db_post_events(pRec, &pRec->val, monitor_mask); -#if 0 /* this is done in the device support code */ - db_post_events(pRec, &pRec->adly, monitor_mask); - db_post_events(pRec, &pRec->dpos, monitor_mask); - db_post_events(pRec, &pRec->apos, monitor_mask); -#endif - return; -} -/****************************************************************************** - * - * - ******************************************************************************/ -static long get_graphic_double(struct dbAddr *paddr, struct dbr_grDouble *pgd) -{ - struct egeventRecord *pRec=(struct egeventRecord *)paddr->precord; - - if(paddr->pfield==(void *)&pRec->val) - { - pgd->upper_disp_limit = 0; - pgd->lower_disp_limit = 0; - } - else if(paddr->pfield==(void *)&pRec->dely - || paddr->pfield==(void *)&pRec->adly - || paddr->pfield==(void *)&pRec->dpos - || paddr->pfield==(void *)&pRec->apos) - { - pgd->upper_disp_limit = (32*1024) - 1; - pgd->lower_disp_limit = 0; - } - else if(paddr->pfield==(void *)&pRec->enm) - { - pgd->upper_disp_limit = 255; - pgd->lower_disp_limit = 0; - } - else - recGblGetGraphicDouble(paddr,pgd); - return(0); -} - -static long get_control_double(struct dbAddr *paddr, struct dbr_ctrlDouble *pcd) -{ - struct egeventRecord *pRec=(struct egeventRecord *)paddr->precord; - - if(paddr->pfield==(void *)&pRec->val) - { - pcd->upper_ctrl_limit = 0; - pcd->lower_ctrl_limit = 1; - } - else if(paddr->pfield==(void *)&pRec->dely - || paddr->pfield==(void *)&pRec->adly - || paddr->pfield==(void *)&pRec->dpos - || paddr->pfield==(void *)&pRec->apos) - { - pcd->upper_ctrl_limit = (32*1024) -1; - pcd->lower_ctrl_limit = 0; - } - else - recGblGetControlDouble(paddr,pcd); - return(0); -} - -static long get_alarm_double(struct dbAddr *paddr, struct dbr_alDouble *pad) -{ -#if 0 - { - pad->upper_alarm_limit = 2; - pad->upper_warning_limit = 2; - pad->lower_warning_limit = -1; - pad->lower_alarm_limit = -1; - } else -#endif - recGblGetAlarmDouble(paddr,pad); - return(0); -} diff --git a/src/rec/egeventRecord.dbd b/src/rec/egeventRecord.dbd deleted file mode 100644 index 49ed35b58..000000000 --- a/src/rec/egeventRecord.dbd +++ /dev/null @@ -1,111 +0,0 @@ -#************************************************************************* -# Copyright (c) 2002 The University of Chicago, as Operator of Argonne -# National Laboratory. -# Copyright (c) 2002 The Regents of the University of California, as -# Operator of Los Alamos National Laboratory. -# EPICS BASE Versions 3.13.7 -# and higher are distributed subject to a Software License Agreement found -# in file LICENSE that is included with this distribution. -#************************************************************************* -menu(egeventRAM) { - choice(egeventRAM_RAM_1,"RAM 1") - choice(egeventRAM_RAM_2,"RAM 2") -} -menu(egeventUNIT) { - choice(egeventUNIT_Clock_Ticks,"Clock Ticks") - choice(egeventUNIT_Fortnights,"Fortnights") - choice(egeventUNIT_Weeks,"Weeks") - choice(egeventUNIT_Days,"Days") - choice(egeventUNIT_Hours,"Hours") - choice(egeventUNIT_Minuites,"Minuites") - choice(egeventUNIT_Seconds,"Seconds") - choice(egeventUNIT_Milliseconds,"Milliseconds") - choice(egeventUNIT_Microseconds,"Microseconds") - choice(egeventUNIT_Nanoseconds,"Nanoseconds") -} -recordtype(egevent) { - include "dbCommon.dbd" - field(OUT,DBF_OUTLINK) { - prompt("Output Specification") - promptgroup(GUI_OUTPUT) - interest(1) - } - field(ENM,DBF_LONG) { - prompt("Event Number") - promptgroup(GUI_DISPLAY) - pp(TRUE) - base(HEX) - interest(1) - } - field(LEVT,DBF_LONG) { - prompt("Last Event Number") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(RAM,DBF_MENU) { - prompt("Event RAM") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(egeventRAM) - } - field(LRAM,DBF_MENU) { - prompt("Last RAM") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - menu(egeventRAM) - } - field(DELY,DBF_DOUBLE) { - prompt("Desired Delay Time") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - } - field(ADLY,DBF_DOUBLE) { - prompt("Actual Delay") - special(SPC_NOMOD) - interest(1) - } - field(DPOS,DBF_LONG) { - prompt("Desired Position") - special(SPC_NOMOD) - interest(1) - } - field(APOS,DBF_LONG) { - prompt("Actual Position") - special(SPC_NOMOD) - interest(1) - } - field(LDLY,DBF_DOUBLE) { - prompt("Last Desired Delay") - special(SPC_NOMOD) - interest(1) - } - field(UNIT,DBF_MENU) { - prompt("Delay Units") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(egeventUNIT) - } - field(VAL,DBF_CHAR) { - prompt("Worthless Value") - asl(ASL0) - special(SPC_NOMOD) - interest(1) - } - field(ELN,DBF_NOACCESS) { - prompt("List Node") - special(SPC_NOMOD) - interest(4) - extra("ELLNODE eln") - } - field(SELF,DBF_NOACCESS) { - prompt("Self Pointer") - special(SPC_NOMOD) - interest(4) - extra("struct egeventRecord *self") - } -} diff --git a/src/rec/erDefs.h b/src/rec/erDefs.h deleted file mode 100644 index 5099fba64..000000000 --- a/src/rec/erDefs.h +++ /dev/null @@ -1,22 +0,0 @@ -/*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne -* National Laboratory. -* Copyright (c) 2002 The Regents of the University of California, as -* Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. -\*************************************************************************/ - -#ifndef EPICS_ERDEFS_H -#define EPICS_ERDEFS_H - -typedef struct ErDsetStruct { - long number; - DEVSUPFUN report; - DEVSUPFUN init; - DEVSUPFUN init_record; - DEVSUPFUN get_ioint_info; - DEVSUPFUN proc; -} ErDsetStruct; -#endif diff --git a/src/rec/erRecord.c b/src/rec/erRecord.c deleted file mode 100644 index 74176a75b..000000000 --- a/src/rec/erRecord.c +++ /dev/null @@ -1,259 +0,0 @@ -/*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne -* National Laboratory. -* Copyright (c) 2002 The Regents of the University of California, as -* Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. -\*************************************************************************/ -/* - * - * Author: John Winans - * Date: 9/27/93 - */ - -#include -#include -#include -#include -#include - -#include "dbDefs.h" -#include "epicsPrint.h" -#include "alarm.h" -#include "dbAccess.h" -#include "dbEvent.h" -#include "dbFldTypes.h" -#include "devSup.h" -#include "errMdef.h" -#include "recSup.h" -#include "recGbl.h" -#include "erDefs.h" - -#define GEN_SIZE_OFFSET -#include "erRecord.h" -#undef GEN_SIZE_OFFSET -#include "epicsExport.h" - -#define STATIC static - -STATIC void ErMonitor(struct erRecord *pRec); - -/* Create RSET - Record Support Entry Table*/ -#define report NULL -#define initialize NULL -STATIC long ErInitRec(struct erRecord *, int); -STATIC long ErProc(struct erRecord *); -#define ErSpecial NULL -#define get_value NULL -#define cvt_dbaddr NULL -#define get_array_info NULL -#define put_array_info NULL -#define get_units NULL -#define get_precision NULL -#define get_enum_str NULL -#define get_enum_strs NULL -#define put_enum_str NULL -static long get_graphic_double(struct dbAddr *paddr, struct dbr_grDouble *pgd); -static long get_control_double(struct dbAddr *paddr, struct dbr_ctrlDouble *pcd); -static long get_alarm_double(struct dbAddr *paddr, struct dbr_alDouble *pad); - -rset erRSET={ - RSETNUMBER, - report, - initialize, - ErInitRec, - ErProc, - ErSpecial, - get_value, - cvt_dbaddr, - get_array_info, - put_array_info, - get_units, - get_precision, - get_enum_str, - get_enum_strs, - put_enum_str, - get_graphic_double, - get_control_double, - get_alarm_double -}; -epicsExportAddress(rset,erRSET); - - -/****************************************************************************** - * - * Init an ER record. - * - ******************************************************************************/ -STATIC long ErInitRec(struct erRecord *pRec, int pass) -{ - ErDsetStruct *pDset = (ErDsetStruct *) pRec->dset; - - if (pass == 1) - { - /* Init the card via driver calls */ - /* Make sure we have a usable device support module */ - if (pDset == NULL) - { - recGblRecordError(S_dev_noDSET,(void *)pRec, "er: ErInitRec"); - return(S_dev_noDSET); - } - if (pDset->number < 5) - { - recGblRecordError(S_dev_missingSup,(void *)pRec, "er: ErInitRec"); - return(S_dev_missingSup); - } - if( pDset->init_record != NULL) - return(*pDset->init_record)(pRec); - } - pRec->taxi = 0; - - return(0); -} -/****************************************************************************** - * - * Process an ER record. - * - ******************************************************************************/ -STATIC long ErProc(struct erRecord *pRec) -{ - ErDsetStruct *pDset = (ErDsetStruct *) pRec->dset; - - pRec->pact=TRUE; - - pRec->ltax = pRec->taxi; /* The only monitorable field we can change */ - - if (pRec->tpro > 10) - printf("recEr::ErProc(%s) entered\n", pRec->name); - - if (pDset->proc != NULL) - (*pDset->proc)(pRec); - - /* Take care of time stamps and such */ - pRec->udf=FALSE; - /* tsLocalTime(&pRec->time);*/ - recGblGetTimeStamp(pRec); - - /* Deal with monitor stuff */ - ErMonitor(pRec); - /* process the forward scan link record */ - recGblFwdLink(pRec); - - pRec->pact=FALSE; - return(0); -} -#if 0 /* this is not needed */ -/****************************************************************************** - * - * Used to check for changed field values - * - ******************************************************************************/ -STATIC long ErSpecial(struct dbAddr *paddr, int after) -{ - struct erRecord *pRec = (struct erRecord *)(paddr->precord); - void *p - - if(!after) - return(0); - - /* Make sure we have the proper special flag type spec'd */ - if (pdbAddr->special != SPC_MOD) - { - recGblDbaddrError(S_db_badChoice,pdbAddr,"bp: special"); - return(S_db_badChoice); - } - p = (void *)(pdbAddr->pfield); - - /* Figure out which field has been changed */ - if (p == &pRec->dg0d) - pRec->dgcm |= 1; - else ... - - return(0); -} -#endif -/****************************************************************************** - * - * Post any events for fields that might have changed while processing. - * - ******************************************************************************/ -STATIC void ErMonitor(struct erRecord *pRec) -{ - unsigned short monitor_mask; - - monitor_mask = recGblResetAlarms(pRec); - monitor_mask |= (DBE_VALUE | DBE_LOG); - db_post_events(pRec, &pRec->val, monitor_mask); - - if (pRec->taxi != pRec->ltax) - db_post_events(pRec, &pRec->taxi, monitor_mask); - - return; -} -static long get_graphic_double(struct dbAddr *paddr, struct dbr_grDouble *pgd) -{ - struct erRecord *pRec=(struct erRecord *)paddr->precord; - - if(paddr->pfield==(void *)&pRec->val) - { - pgd->upper_disp_limit = 0; - pgd->lower_disp_limit = 0; - } - else if(paddr->pfield==(void *)&pRec->dg0d - || paddr->pfield==(void *)&pRec->dg0w - || paddr->pfield==(void *)&pRec->dg1d - || paddr->pfield==(void *)&pRec->dg1w - || paddr->pfield==(void *)&pRec->dg2d - || paddr->pfield==(void *)&pRec->dg2w - || paddr->pfield==(void *)&pRec->dg3d - || paddr->pfield==(void *)&pRec->dg3w) - { - pgd->upper_disp_limit = 64*1024; - pgd->lower_disp_limit = 0; - } - else - recGblGetGraphicDouble(paddr,pgd); - return(0); -} - -static long get_control_double(struct dbAddr *paddr, struct dbr_ctrlDouble *pcd) -{ - struct erRecord *pRec=(struct erRecord *)paddr->precord; - - if(paddr->pfield==(void *)&pRec->val) - { - pcd->upper_ctrl_limit = 0; - pcd->lower_ctrl_limit = 1; - } - else if(paddr->pfield==(void *)&pRec->dg0d - || paddr->pfield==(void *)&pRec->dg0w - || paddr->pfield==(void *)&pRec->dg1d - || paddr->pfield==(void *)&pRec->dg1w - || paddr->pfield==(void *)&pRec->dg2d - || paddr->pfield==(void *)&pRec->dg2w - || paddr->pfield==(void *)&pRec->dg3d - || paddr->pfield==(void *)&pRec->dg3w) - { - pcd->upper_ctrl_limit = 64*1024; - pcd->lower_ctrl_limit = 0; - } - else - recGblGetControlDouble(paddr,pcd); - return(0); -} - -static long get_alarm_double(struct dbAddr *paddr, struct dbr_alDouble *pad) -{ -#if 0 - { - pad->upper_alarm_limit = 2; - pad->upper_warning_limit = 2; - pad->lower_warning_limit = -1; - pad->lower_alarm_limit = -1; - } else -#endif - recGblGetAlarmDouble(paddr,pad); - return(0); -} diff --git a/src/rec/erRecord.dbd b/src/rec/erRecord.dbd deleted file mode 100644 index 0677ac5b6..000000000 --- a/src/rec/erRecord.dbd +++ /dev/null @@ -1,321 +0,0 @@ -#************************************************************************* -# Copyright (c) 2002 The University of Chicago, as Operator of Argonne -# National Laboratory. -# Copyright (c) 2002 The Regents of the University of California, as -# Operator of Los Alamos National Laboratory. -# EPICS BASE Versions 3.13.7 -# and higher are distributed subject to a Software License Agreement found -# in file LICENSE that is included with this distribution. -#************************************************************************* -menu(erTRG0) { - choice(erTRG0_Disabled,"Disabled") - choice(erTRG0_Enabled,"Enabled") -} -recordtype(er) { - include "dbCommon.dbd" - field(VAL,DBF_CHAR) { - prompt("Worthless Value") - asl(ASL0) - special(SPC_NOMOD) - interest(1) - } - field(OUT,DBF_OUTLINK) { - prompt("Output Specification") - promptgroup(GUI_OUTPUT) - interest(1) - } - field(ENAB,DBF_MENU) { - prompt("Master Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(menuYesNo) - } - field(TAXI,DBF_LONG) { - prompt("Taxi Violation") - special(SPC_NOMOD) - interest(1) - } - field(LTAX,DBF_LONG) { - prompt("Last Taxi Violation") - special(SPC_NOMOD) - interest(1) - } - field(TRG0,DBF_MENU) { - prompt("Trigger 0 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(TRG1,DBF_MENU) { - prompt("Trigger 1 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(TRG2,DBF_MENU) { - prompt("Trigger 2 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(TRG3,DBF_MENU) { - prompt("Trigger 3 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(TRG4,DBF_MENU) { - prompt("Trigger 4 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(TRG5,DBF_MENU) { - prompt("Trigger 5 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(TRG6,DBF_MENU) { - prompt("Trigger 6 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTP0,DBF_MENU) { - prompt("OTP 0 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTP1,DBF_MENU) { - prompt("OTP 1 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTP2,DBF_MENU) { - prompt("OTP 2 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTP3,DBF_MENU) { - prompt("OTP 3 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTP4,DBF_MENU) { - prompt("OTP 4 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTP5,DBF_MENU) { - prompt("OTP 5 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTP6,DBF_MENU) { - prompt("OTP 6 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTP7,DBF_MENU) { - prompt("OTP 7 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTP8,DBF_MENU) { - prompt("OTP 8 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTP9,DBF_MENU) { - prompt("OTP 9 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTPA,DBF_MENU) { - prompt("OTP 10 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTPB,DBF_MENU) { - prompt("OTP 11 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTPC,DBF_MENU) { - prompt("OTP 12 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTPD,DBF_MENU) { - prompt("OTP 13 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTL0,DBF_MENU) { - prompt("OTL 0 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTL1,DBF_MENU) { - prompt("OTL 1 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTL2,DBF_MENU) { - prompt("OTL 2 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTL3,DBF_MENU) { - prompt("OTL 3 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTL4,DBF_MENU) { - prompt("OTL 4 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTL5,DBF_MENU) { - prompt("OTL 5 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(OTL6,DBF_MENU) { - prompt("OTL 6 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(DGCM,DBF_LONG) { - prompt("DG Change Mask") - special(SPC_NOMOD) - interest(1) - } - field(DG0E,DBF_MENU) { - prompt("DG 0 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(DG0D,DBF_USHORT) { - prompt("DG 0 Delay") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - } - field(DG0W,DBF_USHORT) { - prompt("DG 0 Width") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - } - field(DG1E,DBF_MENU) { - prompt("DG 1 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(DG1D,DBF_USHORT) { - prompt("DG 1 Delay") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - } - field(DG1W,DBF_USHORT) { - prompt("DG 1 Width") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - } - field(DG2E,DBF_MENU) { - prompt("DG 2 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(DG2D,DBF_USHORT) { - prompt("DG 2 Delay") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - } - field(DG2W,DBF_USHORT) { - prompt("DG 2 Width") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - } - field(DG3E,DBF_MENU) { - prompt("DG 3 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(erTRG0) - } - field(DG3D,DBF_USHORT) { - prompt("DG 3 Delay") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - } - field(DG3W,DBF_USHORT) { - prompt("DG 3 Width") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - } -} diff --git a/src/rec/ereventDefs.h b/src/rec/ereventDefs.h deleted file mode 100644 index 9caf73084..000000000 --- a/src/rec/ereventDefs.h +++ /dev/null @@ -1,21 +0,0 @@ -/*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne -* National Laboratory. -* Copyright (c) 2002 The Regents of the University of California, as -* Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. -\*************************************************************************/ -#ifndef EPICS_EREVENTDEFS_H -#define EPICS_EREVENTDEFS_H - -typedef struct EreventDsetStruct { - long number; - DEVSUPFUN report; - DEVSUPFUN init; - DEVSUPFUN initRec; - DEVSUPFUN get_ioint_info; - DEVSUPFUN proc; -} EreventDsetStruct; -#endif diff --git a/src/rec/ereventRecord.c b/src/rec/ereventRecord.c deleted file mode 100644 index 527040e2a..000000000 --- a/src/rec/ereventRecord.c +++ /dev/null @@ -1,148 +0,0 @@ -/*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne -* National Laboratory. -* Copyright (c) 2002 The Regents of the University of California, as -* Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. -\*************************************************************************/ -/* - * - * Author: John Winans - * Date: 8/27/93 - */ - -#include -#include -#include -#include -#include - -#include "dbDefs.h" -#include "epicsPrint.h" -#include "alarm.h" -#include "dbAccess.h" -#include "dbEvent.h" -#include "dbFldTypes.h" -#include "devSup.h" -#include "errMdef.h" -#include "recSup.h" -#include "recGbl.h" - -#include "ereventDefs.h" -#define GEN_SIZE_OFFSET -#include "ereventRecord.h" -#undef GEN_SIZE_OFFSET -#include "epicsExport.h" - -#define STATIC static - -STATIC void ErEventMonitor(struct ereventRecord *pRec); - -/* Create RSET - Record Support Entry Table*/ -#define report NULL -#define initialize NULL -STATIC long ErEventInitRec(struct ereventRecord *, int); -STATIC long ErEventProc(struct ereventRecord *); -#define special NULL -#define get_value NULL -#define cvt_dbaddr NULL -#define get_array_info NULL -#define put_array_info NULL -#define get_units NULL -#define get_precision NULL -#define get_enum_str NULL -#define get_enum_strs NULL -#define put_enum_str NULL -#define get_graphic_double NULL -#define get_control_double NULL -#define get_alarm_double NULL - -rset ereventRSET={ - RSETNUMBER, - report, - initialize, - ErEventInitRec, - ErEventProc, - special, - get_value, - cvt_dbaddr, - get_array_info, - put_array_info, - get_units, - get_precision, - get_enum_str, - get_enum_strs, - put_enum_str, - get_graphic_double, - get_control_double, - get_alarm_double -}; -epicsExportAddress(rset,ereventRSET); - - - -STATIC long ErEventInitRec(struct ereventRecord *pRec, int pass) -{ - EreventDsetStruct *pDset = (EreventDsetStruct *) pRec->dset; - - if (pass == 1) - { - /* Init the card via driver calls */ - /* Make sure we have a usable device support module */ - if (pDset == NULL) - { - recGblRecordError(S_dev_noDSET,(void *)pRec, "eg: ErEventInitRec"); - return(S_dev_noDSET); - } - if (pDset->number < 5) - { - recGblRecordError(S_dev_missingSup,(void *)pRec, "eg: ErEventInitRec"); - return(S_dev_missingSup); - } - if( pDset->initRec != NULL) - return(*pDset->initRec)(pRec); - } - return(0); -} -/****************************************************************************** - ******************************************************************************/ -STATIC long ErEventProc(struct ereventRecord *pRec) -{ - EreventDsetStruct *pDset = (EreventDsetStruct *) pRec->dset; - - pRec->pact=TRUE; - - if (pRec->tpro > 10) - printf("recErEvent::ErEventProc(%s) entered\n", pRec->name); - - if (pDset->proc) - (*pDset->proc)(pRec); - - /* Take care of time stamps and such */ - pRec->udf=FALSE; - /* tsLocalTime(&pRec->time);*/ - recGblGetTimeStamp(pRec); - - /* Deal with monitor stuff */ - ErEventMonitor(pRec); - /* process the forward scan link record */ - recGblFwdLink(pRec); - - pRec->pact=FALSE; - return(0); -} - -/****************************************************************************** - * - ******************************************************************************/ -STATIC void ErEventMonitor(struct ereventRecord *pRec) -{ - unsigned short monitor_mask; - - monitor_mask = recGblResetAlarms(pRec); - monitor_mask |= (DBE_VALUE | DBE_LOG); - db_post_events(pRec, &pRec->val, monitor_mask); - return; -} diff --git a/src/rec/ereventRecord.dbd b/src/rec/ereventRecord.dbd deleted file mode 100644 index e7c8393bd..000000000 --- a/src/rec/ereventRecord.dbd +++ /dev/null @@ -1,158 +0,0 @@ -#************************************************************************* -# Copyright (c) 2002 The University of Chicago, as Operator of Argonne -# National Laboratory. -# Copyright (c) 2002 The Regents of the University of California, as -# Operator of Los Alamos National Laboratory. -# EPICS BASE Versions 3.13.7 -# and higher are distributed subject to a Software License Agreement found -# in file LICENSE that is included with this distribution. -#************************************************************************* -menu(ereventENAB) { - choice(ereventENAB_Disabled,"Disabled") - choice(ereventENAB_Enabled,"Enabled") -} -recordtype(erevent) { - include "dbCommon.dbd" - field(VAL,DBF_CHAR) { - prompt("Worthless Value") - asl(ASL0) - special(SPC_NOMOD) - interest(1) - } - field(OUT,DBF_OUTLINK) { - prompt("Output Specification") - promptgroup(GUI_OUTPUT) - interest(1) - } - field(ENAB,DBF_MENU) { - prompt("Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(ENM,DBF_LONG) { - prompt("Event Number") - promptgroup(GUI_DISPLAY) - pp(TRUE) - base(HEX) - interest(1) - } - field(LENM,DBF_LONG) { - prompt("Last Event Number") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(LOUT,DBF_LONG) { - prompt("Last Out Enable Mask") - special(SPC_NOMOD) - pp(TRUE) - interest(1) - } - field(OUT0,DBF_MENU) { - prompt("Out 0 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUT1,DBF_MENU) { - prompt("Out 1 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUT2,DBF_MENU) { - prompt("Out 2 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUT3,DBF_MENU) { - prompt("Out 3 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUT4,DBF_MENU) { - prompt("Out 4 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUT5,DBF_MENU) { - prompt("Out 5 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUT6,DBF_MENU) { - prompt("Out 6 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUT7,DBF_MENU) { - prompt("Out 7 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUT8,DBF_MENU) { - prompt("Out 8 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUT9,DBF_MENU) { - prompt("Out 9 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUTA,DBF_MENU) { - prompt("Out 10 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUTB,DBF_MENU) { - prompt("Out 11 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUTC,DBF_MENU) { - prompt("Out 12 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(OUTD,DBF_MENU) { - prompt("Out 13 Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } - field(VME,DBF_MENU) { - prompt("VME IRQ Enable") - promptgroup(GUI_DISPLAY) - pp(TRUE) - interest(1) - menu(ereventENAB) - } -}