dbd/IOCINFRA.dbd
changeset 1 f6e1a4c75073
parent 0 77d8eafe2a07
equal deleted inserted replaced
0:77d8eafe2a07 1:f6e1a4c75073
     1 menu(aoOIF) {
     1 menu(aSubLFLG) {
     2     choice(aoOIF_Full, "Full")
     2     choice(aSubLFLG_IGNORE, "IGNORE")
     3     choice(aoOIF_Incremental, "Incremental")
     3     choice(aSubLFLG_READ, "READ")
     4 }
     4 }
     5 menu(acalcoutINAP) {
     5 menu(scalcoutINAP) {
     6     choice(acalcoutINAP_No, "No PROC on Change")
     6     choice(scalcoutINAP_No, "No PROC on Change")
     7     choice(acalcoutINAP_Yes, "PROC on Change")
     7     choice(scalcoutINAP_Yes, "PROC on Change")
     8 }
     8 }
     9 menu(acalcoutOOPT) {
     9 menu(acalcoutDOPT) {
    10     choice(acalcoutOOPT_Every_Time, "Every Time")
    10     choice(acalcoutDOPT_Use_VAL, "Use CALC")
    11     choice(acalcoutOOPT_On_Change, "On Change")
    11     choice(acalcoutDOPT_Use_OVAL, "Use OCAL")
    12     choice(acalcoutOOPT_When_Zero, "When Zero")
       
    13     choice(acalcoutOOPT_When_Non_zero, "When Non-zero")
       
    14     choice(acalcoutOOPT_Transition_To_Zero, "Transition To Zero")
       
    15     choice(acalcoutOOPT_Transition_To_Non_zero, "Transition To Non-zero")
       
    16     choice(acalcoutOOPT_Never, "Never")
       
    17 }
    12 }
    18 menu(menuSimm) {
    13 menu(stringoutPOST) {
    19     choice(menuSimmNO, "NO")
    14     choice(stringoutPOST_OnChange, "On Change")
    20     choice(menuSimmYES, "YES")
    15     choice(stringoutPOST_Always, "Always")
    21     choice(menuSimmRAW, "RAW")
    16 }
       
    17 menu(serialIX) {
       
    18     choice(serialIX_unknown, "Unknown")
       
    19     choice(serialIX_No, "No")
       
    20     choice(serialIX_Yes, "Yes")
       
    21 }
       
    22 menu(serialSBIT) {
       
    23     choice(serialSBIT_unknown, "Unknown")
       
    24     choice(serialSBIT_1, "1")
       
    25     choice(serialSBIT_2, "2")
       
    26 }
       
    27 menu(bufferingALG) {
       
    28     choice(bufferingALG_FIFO, "FIFO Buffer")
       
    29     choice(bufferingALG_LIFO, "LIFO Buffer")
    22 }
    30 }
    23 menu(menuAlarmSevr) {
    31 menu(menuAlarmSevr) {
    24     choice(menuAlarmSevrNO_ALARM, "NO_ALARM")
    32     choice(menuAlarmSevrNO_ALARM, "NO_ALARM")
    25     choice(menuAlarmSevrMINOR, "MINOR")
    33     choice(menuAlarmSevrMINOR, "MINOR")
    26     choice(menuAlarmSevrMAJOR, "MAJOR")
    34     choice(menuAlarmSevrMAJOR, "MAJOR")
    27     choice(menuAlarmSevrINVALID, "INVALID")
    35     choice(menuAlarmSevrINVALID, "INVALID")
       
    36 }
       
    37 menu(scalcoutWAIT) {
       
    38     choice(scalcoutWAIT_NoWait, "NoWait")
       
    39     choice(scalcoutWAIT_Wait, "Wait")
       
    40 }
       
    41 menu(calcoutINAV) {
       
    42     choice(calcoutINAV_EXT_NC, "Ext PV NC")
       
    43     choice(calcoutINAV_EXT, "Ext PV OK")
       
    44     choice(calcoutINAV_LOC, "Local PV")
       
    45     choice(calcoutINAV_CON, "Constant")
       
    46 }
       
    47 menu(dfanoutSELM) {
       
    48     choice(dfanoutSELM_All, "All")
       
    49     choice(dfanoutSELM_Specified, "Specified")
       
    50     choice(dfanoutSELM_Mask, "Mask")
       
    51 }
       
    52 menu(scalcoutOOPT) {
       
    53     choice(scalcoutOOPT_Every_Time, "Every Time")
       
    54     choice(scalcoutOOPT_On_Change, "On Change")
       
    55     choice(scalcoutOOPT_When_Zero, "When Zero")
       
    56     choice(scalcoutOOPT_When_Non_zero, "When Non-zero")
       
    57     choice(scalcoutOOPT_Transition_To_Zero, "Transition To Zero")
       
    58     choice(scalcoutOOPT_Transition_To_Non_zero, "Transition To Non-zero")
       
    59     choice(scalcoutOOPT_Never, "Never")
       
    60 }
       
    61 menu(serialDBIT) {
       
    62     choice(serialDBIT_unknown, "Unknown")
       
    63     choice(serialDBIT_5, "5")
       
    64     choice(serialDBIT_6, "6")
       
    65     choice(serialDBIT_7, "7")
       
    66     choice(serialDBIT_8, "8")
       
    67 }
       
    68 menu(waveformPOST) {
       
    69     choice(waveformPOST_Always, "Always")
       
    70     choice(waveformPOST_OnChange, "On Change")
       
    71 }
       
    72 menu(sseqLNKV) {
       
    73     choice(sseqLNKV_EXT_NC, "Ext PV NC")
       
    74     choice(sseqLNKV_EXT, "Ext PV OK")
       
    75     choice(sseqLNKV_LOC, "Local PV")
       
    76     choice(sseqLNKV_CON, "Constant")
       
    77 }
       
    78 menu(calcoutDOPT) {
       
    79     choice(calcoutDOPT_Use_VAL, "Use CALC")
       
    80     choice(calcoutDOPT_Use_OVAL, "Use OCAL")
       
    81 }
       
    82 menu(asynENABLE) {
       
    83     choice(asynENABLE_Disable, "Disable")
       
    84     choice(asynENABLE_Enable, "Enable")
       
    85 }
       
    86 menu(swaitINAV) {
       
    87     choice(swaitINAV_PV_OK, "PV OK")
       
    88     choice(swaitINAV_PV_BAD, "PV BAD")
       
    89     choice(swaitINAV_No_PV, "No PV")
       
    90 }
       
    91 menu(swaitOOPT) {
       
    92     choice(swaitOOPT_Every_Time, "Every Time")
       
    93     choice(swaitOOPT_On_Change, "On Change")
       
    94     choice(swaitOOPT_When_Zero, "When Zero")
       
    95     choice(swaitOOPT_When_Non_zero, "When Non-zero")
       
    96     choice(swaitOOPT_Transition_To_Zero, "Transition To Zero")
       
    97     choice(swaitOOPT_Transition_To_Non_zero, "Transition To Non-zero")
       
    98     choice(swaitOOPT_Never, "Never")
    28 }
    99 }
    29 menu(menuConvert) {
   100 menu(menuConvert) {
    30     choice(menuConvertNO_CONVERSION, "NO CONVERSION")
   101     choice(menuConvertNO_CONVERSION, "NO CONVERSION")
    31     choice(menuConvertSLOPE, "SLOPE")
   102     choice(menuConvertSLOPE, "SLOPE")
    32     choice(menuConvertLINEAR, "LINEAR")
   103     choice(menuConvertLINEAR, "LINEAR")
    41     choice(menuConverttypeRdegF, "typeRdegF")
   112     choice(menuConverttypeRdegF, "typeRdegF")
    42     choice(menuConverttypeRdegC, "typeRdegC")
   113     choice(menuConverttypeRdegC, "typeRdegC")
    43     choice(menuConverttypeSdegF, "typeSdegF")
   114     choice(menuConverttypeSdegF, "typeSdegF")
    44     choice(menuConverttypeSdegC, "typeSdegC")
   115     choice(menuConverttypeSdegC, "typeSdegC")
    45 }
   116 }
    46 menu(scalcoutOOPT) {
       
    47     choice(scalcoutOOPT_Every_Time, "Every Time")
       
    48     choice(scalcoutOOPT_On_Change, "On Change")
       
    49     choice(scalcoutOOPT_When_Zero, "When Zero")
       
    50     choice(scalcoutOOPT_When_Non_zero, "When Non-zero")
       
    51     choice(scalcoutOOPT_Transition_To_Zero, "Transition To Zero")
       
    52     choice(scalcoutOOPT_Transition_To_Non_zero, "Transition To Non-zero")
       
    53     choice(scalcoutOOPT_Never, "Never")
       
    54 }
       
    55 menu(ipDRTO) {
       
    56     choice(ipDRTO_unknown, "Unknown")
       
    57     choice(ipDRTO_No, "No")
       
    58     choice(ipDRTO_Yes, "Yes")
       
    59 }
       
    60 menu(calcoutOOPT) {
       
    61     choice(calcoutOOPT_Every_Time, "Every Time")
       
    62     choice(calcoutOOPT_On_Change, "On Change")
       
    63     choice(calcoutOOPT_When_Zero, "When Zero")
       
    64     choice(calcoutOOPT_When_Non_zero, "When Non-zero")
       
    65     choice(calcoutOOPT_Transition_To_Zero, "Transition To Zero")
       
    66     choice(calcoutOOPT_Transition_To_Non_zero, "Transition To Non-zero")
       
    67 }
       
    68 menu(sseqLNKV) {
       
    69     choice(sseqLNKV_EXT_NC, "Ext PV NC")
       
    70     choice(sseqLNKV_EXT, "Ext PV OK")
       
    71     choice(sseqLNKV_LOC, "Local PV")
       
    72     choice(sseqLNKV_CON, "Constant")
       
    73 }
       
    74 menu(aSubEFLG) {
       
    75     choice(aSubEFLG_NEVER, "NEVER")
       
    76     choice(aSubEFLG_ON_CHANGE, "ON CHANGE")
       
    77     choice(aSubEFLG_ALWAYS, "ALWAYS")
       
    78 }
       
    79 menu(sseqSELM) {
       
    80     choice(sseqSELM_All, "All")
       
    81     choice(sseqSELM_Specified, "Specified")
       
    82     choice(sseqSELM_Mask, "Mask")
       
    83 }
       
    84 menu(asynFMT) {
       
    85     choice(asynFMT_ASCII, "ASCII")
       
    86     choice(asynFMT_Hybrid, "Hybrid")
       
    87     choice(asynFMT_Binary, "Binary")
       
    88 }
       
    89 menu(serialFCTL) {
       
    90     choice(serialFCTL_unknown, "Unknown")
       
    91     choice(serialFCTL_None, "None")
       
    92     choice(serialFCTL_Hardware, "Hardware")
       
    93 }
       
    94 menu(acalcoutDOPT) {
       
    95     choice(acalcoutDOPT_Use_VAL, "Use CALC")
       
    96     choice(acalcoutDOPT_Use_OVAL, "Use OCAL")
       
    97 }
       
    98 menu(gpibUCMD) {
       
    99     choice(gpibUCMD_None, "None")
       
   100     choice(gpibUCMD_Device_Clear__DCL_, "Device Clear (DCL)")
       
   101     choice(gpibUCMD_Local_Lockout__LL0_, "Local Lockout (LL0)")
       
   102     choice(gpibUCMD_Serial_Poll_Disable__SPD_, "Serial Poll Disable (SPD)")
       
   103     choice(gpibUCMD_Serial_Poll_Enable__SPE_, "Serial Poll Enable (SPE)")
       
   104     choice(gpibUCMD_Unlisten__UNL_, "Unlisten (UNL)")
       
   105     choice(gpibUCMD_Untalk__UNT_, "Untalk (UNT)")
       
   106 }
       
   107 menu(asynENABLE) {
       
   108     choice(asynENABLE_Disable, "Disable")
       
   109     choice(asynENABLE_Enable, "Enable")
       
   110 }
       
   111 menu(menuPriority) {
       
   112     choice(menuPriorityLOW, "LOW")
       
   113     choice(menuPriorityMEDIUM, "MEDIUM")
       
   114     choice(menuPriorityHIGH, "HIGH")
       
   115 }
       
   116 menu(menuYesNo) {
       
   117     choice(menuYesNoNO, "NO")
       
   118     choice(menuYesNoYES, "YES")
       
   119 }
       
   120 menu(calcoutDOPT) {
       
   121     choice(calcoutDOPT_Use_VAL, "Use CALC")
       
   122     choice(calcoutDOPT_Use_OVAL, "Use OCAL")
       
   123 }
       
   124 menu(swaitINAP) {
       
   125     choice(swaitINAP_No, "No")
       
   126     choice(swaitINAP_Yes, "Yes")
       
   127 }
       
   128 menu(asynAUTOCONNECT) {
       
   129     choice(asynAUTOCONNECT_noAutoConnect, "noAutoConnect")
       
   130     choice(asynAUTOCONNECT_autoConnect, "autoConnect")
       
   131 }
       
   132 menu(acalcoutSIZE) {
       
   133     choice(acalcoutSIZE_NELM, "NELM")
       
   134     choice(acalcoutSIZE_NUSE, "NUSE")
       
   135 }
       
   136 menu(aaoPOST) {
       
   137     choice(aaoPOST_Always, "Always")
       
   138     choice(aaoPOST_OnChange, "On Change")
       
   139 }
       
   140 menu(menuPost) {
       
   141     choice(menuPost_OnChange, "On Change")
       
   142     choice(menuPost_Always, "Always")
       
   143 }
       
   144 menu(serialDBIT) {
       
   145     choice(serialDBIT_unknown, "Unknown")
       
   146     choice(serialDBIT_5, "5")
       
   147     choice(serialDBIT_6, "6")
       
   148     choice(serialDBIT_7, "7")
       
   149     choice(serialDBIT_8, "8")
       
   150 }
       
   151 menu(scalcoutINAP) {
       
   152     choice(scalcoutINAP_No, "No PROC on Change")
       
   153     choice(scalcoutINAP_Yes, "PROC on Change")
       
   154 }
       
   155 menu(selSELM) {
       
   156     choice(selSELM_Specified, "Specified")
       
   157     choice(selSELM_High_Signal, "High Signal")
       
   158     choice(selSELM_Low_Signal, "Low Signal")
       
   159     choice(selSELM_Median_Signal, "Median Signal")
       
   160 }
       
   161 menu(seqSELM) {
       
   162     choice(seqSELM_All, "All")
       
   163     choice(seqSELM_Specified, "Specified")
       
   164     choice(seqSELM_Mask, "Mask")
       
   165 }
       
   166 menu(sseqWAIT) {
   117 menu(sseqWAIT) {
   167     choice(sseqWAIT_NoWait, "NoWait")
   118     choice(sseqWAIT_NoWait, "NoWait")
   168     choice(sseqWAIT_Wait, "Wait")
   119     choice(sseqWAIT_Wait, "Wait")
   169     choice(sseqWAIT_Wait1, "After1")
   120     choice(sseqWAIT_Wait1, "After1")
   170     choice(sseqWAIT_Wait2, "After2")
   121     choice(sseqWAIT_Wait2, "After2")
   175     choice(sseqWAIT_Wait7, "After7")
   126     choice(sseqWAIT_Wait7, "After7")
   176     choice(sseqWAIT_Wait8, "After8")
   127     choice(sseqWAIT_Wait8, "After8")
   177     choice(sseqWAIT_Wait9, "After9")
   128     choice(sseqWAIT_Wait9, "After9")
   178     choice(sseqWAIT_Wait10, "AfterA")
   129     choice(sseqWAIT_Wait10, "AfterA")
   179 }
   130 }
   180 menu(compressALG) {
   131 menu(histogramCMD) {
   181     choice(compressALG_N_to_1_Low_Value, "N to 1 Low Value")
   132     choice(histogramCMD_Read, "Read")
   182     choice(compressALG_N_to_1_High_Value, "N to 1 High Value")
   133     choice(histogramCMD_Clear, "Clear")
   183     choice(compressALG_N_to_1_Average, "N to 1 Average")
   134     choice(histogramCMD_Start, "Start")
   184     choice(compressALG_Average, "Average")
   135     choice(histogramCMD_Stop, "Stop")
   185     choice(compressALG_Circular_Buffer, "Circular Buffer")
       
   186     choice(compressALG_N_to_1_Median, "N to 1 Median")
       
   187 }
   136 }
   188 menu(menuPini) {
   137 menu(asynFMT) {
   189     choice(menuPiniNO, "NO")
   138     choice(asynFMT_ASCII, "ASCII")
   190     choice(menuPiniYES, "YES")
   139     choice(asynFMT_Hybrid, "Hybrid")
   191     choice(menuPiniRUN, "RUN")
   140     choice(asynFMT_Binary, "Binary")
   192     choice(menuPiniRUNNING, "RUNNING")
       
   193     choice(menuPiniPAUSE, "PAUSE")
       
   194     choice(menuPiniPAUSED, "PAUSED")
       
   195 }
   141 }
   196 menu(serialMCTL) {
   142 menu(transformIVLA) {
   197     choice(serialMCTL_unknown, "Unknown")
   143     choice(transformIVLA_IGNORE, "Ignore error")
   198     choice(serialMCTL_CLOCAL, "CLOCAL")
   144     choice(transformIVLA_DO_NOTHING, "Do Nothing")
   199     choice(serialMCTL_Yes, "YES")
   145 }
       
   146 menu(swaitINAP) {
       
   147     choice(swaitINAP_No, "No")
       
   148     choice(swaitINAP_Yes, "Yes")
       
   149 }
       
   150 menu(asynEOMREASON) {
       
   151     choice(asynEOMREASONNone, "None")
       
   152     choice(asynEOMREASONCNT, "Count")
       
   153     choice(asynEOMREASONEOS, "Eos")
       
   154     choice(asynEOMREASONCNTEOS, "Count Eos")
       
   155     choice(asynEOMREASONEND, "End")
       
   156     choice(asynEOMREASONCNTEND, "Count End")
       
   157     choice(asynEOMREASONEOSEND, "Eos End")
       
   158     choice(asynEOMREASONCNTEOSEND, "Count Eos End")
       
   159 }
       
   160 menu(asynTMOD) {
       
   161     choice(asynTMOD_Write_Read, "Write/Read")
       
   162     choice(asynTMOD_Write, "Write")
       
   163     choice(asynTMOD_Read, "Read")
       
   164     choice(asynTMOD_Flush, "Flush")
       
   165     choice(asynTMOD_NoIO, "NoI/O")
       
   166 }
       
   167 menu(stringinPOST) {
       
   168     choice(stringinPOST_OnChange, "On Change")
       
   169     choice(stringinPOST_Always, "Always")
       
   170 }
       
   171 menu(serialFCTL) {
       
   172     choice(serialFCTL_unknown, "Unknown")
       
   173     choice(serialFCTL_None, "None")
       
   174     choice(serialFCTL_Hardware, "Hardware")
       
   175 }
       
   176 menu(menuPriority) {
       
   177     choice(menuPriorityLOW, "LOW")
       
   178     choice(menuPriorityMEDIUM, "MEDIUM")
       
   179     choice(menuPriorityHIGH, "HIGH")
       
   180 }
       
   181 menu(aaoPOST) {
       
   182     choice(aaoPOST_Always, "Always")
       
   183     choice(aaoPOST_OnChange, "On Change")
       
   184 }
       
   185 menu(menuFtype) {
       
   186     choice(menuFtypeSTRING, "STRING")
       
   187     choice(menuFtypeCHAR, "CHAR")
       
   188     choice(menuFtypeUCHAR, "UCHAR")
       
   189     choice(menuFtypeSHORT, "SHORT")
       
   190     choice(menuFtypeUSHORT, "USHORT")
       
   191     choice(menuFtypeLONG, "LONG")
       
   192     choice(menuFtypeULONG, "ULONG")
       
   193     choice(menuFtypeINT64, "INT64")
       
   194     choice(menuFtypeUINT64, "UINT64")
       
   195     choice(menuFtypeFLOAT, "FLOAT")
       
   196     choice(menuFtypeDOUBLE, "DOUBLE")
       
   197     choice(menuFtypeENUM, "ENUM")
       
   198 }
       
   199 menu(menuPost) {
       
   200     choice(menuPost_OnChange, "On Change")
       
   201     choice(menuPost_Always, "Always")
       
   202 }
       
   203 menu(menuScan) {
       
   204     choice(menuScanPassive, "Passive")
       
   205     choice(menuScanEvent, "Event")
       
   206     choice(menuScanI_O_Intr, "I/O Intr")
       
   207     choice(menuScan10_second, "10 second")
       
   208     choice(menuScan5_second, "5 second")
       
   209     choice(menuScan2_second, "2 second")
       
   210     choice(menuScan1_second, "1 second")
       
   211     choice(menuScan_5_second, ".5 second")
       
   212     choice(menuScan_2_second, ".2 second")
       
   213     choice(menuScan_1_second, ".1 second")
       
   214 }
       
   215 menu(transformCOPT) {
       
   216     choice(transformCOPT_CONDITIONAL, "Conditional")
       
   217     choice(transformCOPT_ALWAYS, "Always")
       
   218 }
       
   219 menu(menuSimm) {
       
   220     choice(menuSimmNO, "NO")
       
   221     choice(menuSimmYES, "YES")
       
   222     choice(menuSimmRAW, "RAW")
   200 }
   223 }
   201 menu(menuAlarmStat) {
   224 menu(menuAlarmStat) {
   202     choice(menuAlarmStatNO_ALARM, "NO_ALARM")
   225     choice(menuAlarmStatNO_ALARM, "NO_ALARM")
   203     choice(menuAlarmStatREAD, "READ")
   226     choice(menuAlarmStatREAD, "READ")
   204     choice(menuAlarmStatWRITE, "WRITE")
   227     choice(menuAlarmStatWRITE, "WRITE")
   220     choice(menuAlarmStatDISABLE, "DISABLE")
   243     choice(menuAlarmStatDISABLE, "DISABLE")
   221     choice(menuAlarmStatSIMM, "SIMM")
   244     choice(menuAlarmStatSIMM, "SIMM")
   222     choice(menuAlarmStatREAD_ACCESS, "READ_ACCESS")
   245     choice(menuAlarmStatREAD_ACCESS, "READ_ACCESS")
   223     choice(menuAlarmStatWRITE_ACCESS, "WRITE_ACCESS")
   246     choice(menuAlarmStatWRITE_ACCESS, "WRITE_ACCESS")
   224 }
   247 }
   225 menu(aSubLFLG) {
       
   226     choice(aSubLFLG_IGNORE, "IGNORE")
       
   227     choice(aSubLFLG_READ, "READ")
       
   228 }
       
   229 menu(histogramCMD) {
       
   230     choice(histogramCMD_Read, "Read")
       
   231     choice(histogramCMD_Clear, "Clear")
       
   232     choice(histogramCMD_Start, "Start")
       
   233     choice(histogramCMD_Stop, "Stop")
       
   234 }
       
   235 menu(bufferingALG) {
       
   236     choice(bufferingALG_FIFO, "FIFO Buffer")
       
   237     choice(bufferingALG_LIFO, "LIFO Buffer")
       
   238 }
       
   239 menu(aaiPOST) {
       
   240     choice(aaiPOST_Always, "Always")
       
   241     choice(aaiPOST_OnChange, "On Change")
       
   242 }
       
   243 menu(swaitDOPT) {
       
   244     choice(swaitDOPT_Use_VAL, "Use VAL")
       
   245     choice(swaitDOPT_Use_DOL, "Use DOL")
       
   246 }
       
   247 menu(menuFtype) {
       
   248     choice(menuFtypeSTRING, "STRING")
       
   249     choice(menuFtypeCHAR, "CHAR")
       
   250     choice(menuFtypeUCHAR, "UCHAR")
       
   251     choice(menuFtypeSHORT, "SHORT")
       
   252     choice(menuFtypeUSHORT, "USHORT")
       
   253     choice(menuFtypeLONG, "LONG")
       
   254     choice(menuFtypeULONG, "ULONG")
       
   255     choice(menuFtypeINT64, "INT64")
       
   256     choice(menuFtypeUINT64, "UINT64")
       
   257     choice(menuFtypeFLOAT, "FLOAT")
       
   258     choice(menuFtypeDOUBLE, "DOUBLE")
       
   259     choice(menuFtypeENUM, "ENUM")
       
   260 }
       
   261 menu(calcoutINAV) {
       
   262     choice(calcoutINAV_EXT_NC, "Ext PV NC")
       
   263     choice(calcoutINAV_EXT, "Ext PV OK")
       
   264     choice(calcoutINAV_LOC, "Local PV")
       
   265     choice(calcoutINAV_CON, "Constant")
       
   266 }
       
   267 menu(scalcoutINAV) {
       
   268     choice(scalcoutINAV_EXT_NC, "Ext PV NC")
       
   269     choice(scalcoutINAV_EXT, "Ext PV OK")
       
   270     choice(scalcoutINAV_LOC, "Local PV")
       
   271     choice(scalcoutINAV_CON, "Constant")
       
   272 }
       
   273 menu(asynINTERFACE) {
       
   274     choice(asynINTERFACE_OCTET, "asynOctet")
       
   275     choice(asynINTERFACE_INT32, "asynInt32")
       
   276     choice(asynINTERFACE_UINT32, "asynUInt32Digital")
       
   277     choice(asynINTERFACE_FLOAT64, "asynFloat64")
       
   278 }
       
   279 menu(transformCOPT) {
       
   280     choice(transformCOPT_CONDITIONAL, "Conditional")
       
   281     choice(transformCOPT_ALWAYS, "Always")
       
   282 }
       
   283 menu(asynCONNECT) {
       
   284     choice(asynCONNECT_Disconnect, "Disconnect")
       
   285     choice(asynCONNECT_Connect, "Connect")
       
   286 }
       
   287 menu(stringinPOST) {
       
   288     choice(stringinPOST_OnChange, "On Change")
       
   289     choice(stringinPOST_Always, "Always")
       
   290 }
       
   291 menu(menuOmsl) {
       
   292     choice(menuOmslsupervisory, "supervisory")
       
   293     choice(menuOmslclosed_loop, "closed_loop")
       
   294 }
       
   295 menu(menuScan) {
       
   296     choice(menuScanPassive, "Passive")
       
   297     choice(menuScanEvent, "Event")
       
   298     choice(menuScanI_O_Intr, "I/O Intr")
       
   299     choice(menuScan10_second, "10 second")
       
   300     choice(menuScan5_second, "5 second")
       
   301     choice(menuScan2_second, "2 second")
       
   302     choice(menuScan1_second, "1 second")
       
   303     choice(menuScan_5_second, ".5 second")
       
   304     choice(menuScan_2_second, ".2 second")
       
   305     choice(menuScan_1_second, ".1 second")
       
   306 }
       
   307 menu(transformIVLA) {
       
   308     choice(transformIVLA_IGNORE, "Ignore error")
       
   309     choice(transformIVLA_DO_NOTHING, "Do Nothing")
       
   310 }
       
   311 menu(transformIAV) {
   248 menu(transformIAV) {
   312     choice(transformIAV_EXT_NC, "Ext PV NC")
   249     choice(transformIAV_EXT_NC, "Ext PV NC")
   313     choice(transformIAV_EXT, "Ext PV OK")
   250     choice(transformIAV_EXT, "Ext PV OK")
   314     choice(transformIAV_LOC, "Local PV")
   251     choice(transformIAV_LOC, "Local PV")
   315     choice(transformIAV_CON, "Constant")
   252     choice(transformIAV_CON, "Constant")
   316 }
   253 }
   317 menu(waveformPOST) {
   254 menu(sseqSELM) {
   318     choice(waveformPOST_Always, "Always")
   255     choice(sseqSELM_All, "All")
   319     choice(waveformPOST_OnChange, "On Change")
   256     choice(sseqSELM_Specified, "Specified")
       
   257     choice(sseqSELM_Mask, "Mask")
   320 }
   258 }
   321 menu(serialIX) {
   259 menu(seqSELM) {
   322     choice(serialIX_unknown, "Unknown")
   260     choice(seqSELM_All, "All")
   323     choice(serialIX_No, "No")
   261     choice(seqSELM_Specified, "Specified")
   324     choice(serialIX_Yes, "Yes")
   262     choice(seqSELM_Mask, "Mask")
   325 }
   263 }
   326 menu(swaitINAV) {
   264 menu(menuYesNo) {
   327     choice(swaitINAV_PV_OK, "PV OK")
   265     choice(menuYesNoNO, "NO")
   328     choice(swaitINAV_PV_BAD, "PV BAD")
   266     choice(menuYesNoYES, "YES")
   329     choice(swaitINAV_No_PV, "No PV")
       
   330 }
   267 }
   331 menu(swaitOOPT) {
   268 menu(serialPRTY) {
   332     choice(swaitOOPT_Every_Time, "Every Time")
   269     choice(serialPRTY_unknown, "Unknown")
   333     choice(swaitOOPT_On_Change, "On Change")
   270     choice(serialPRTY_None, "None")
   334     choice(swaitOOPT_When_Zero, "When Zero")
   271     choice(serialPRTY_Even, "Even")
   335     choice(swaitOOPT_When_Non_zero, "When Non-zero")
   272     choice(serialPRTY_Odd, "Odd")
   336     choice(swaitOOPT_Transition_To_Zero, "Transition To Zero")
       
   337     choice(swaitOOPT_Transition_To_Non_zero, "Transition To Non-zero")
       
   338     choice(swaitOOPT_Never, "Never")
       
   339 }
   273 }
   340 menu(scalcoutDOPT) {
   274 menu(serialMCTL) {
   341     choice(scalcoutDOPT_Use_VAL, "Use CALC")
   275     choice(serialMCTL_unknown, "Unknown")
   342     choice(scalcoutDOPT_Use_OVAL, "Use OCAL")
   276     choice(serialMCTL_CLOCAL, "CLOCAL")
       
   277     choice(serialMCTL_Yes, "YES")
       
   278 }
       
   279 menu(asynTRACE) {
       
   280     choice(asynTRACE_Off, "Off")
       
   281     choice(asynTRACE_On, "On")
       
   282 }
       
   283 menu(gpibUCMD) {
       
   284     choice(gpibUCMD_None, "None")
       
   285     choice(gpibUCMD_Device_Clear__DCL_, "Device Clear (DCL)")
       
   286     choice(gpibUCMD_Local_Lockout__LL0_, "Local Lockout (LL0)")
       
   287     choice(gpibUCMD_Serial_Poll_Disable__SPD_, "Serial Poll Disable (SPD)")
       
   288     choice(gpibUCMD_Serial_Poll_Enable__SPE_, "Serial Poll Enable (SPE)")
       
   289     choice(gpibUCMD_Unlisten__UNL_, "Unlisten (UNL)")
       
   290     choice(gpibUCMD_Untalk__UNT_, "Untalk (UNT)")
       
   291 }
       
   292 menu(compressALG) {
       
   293     choice(compressALG_N_to_1_Low_Value, "N to 1 Low Value")
       
   294     choice(compressALG_N_to_1_High_Value, "N to 1 High Value")
       
   295     choice(compressALG_N_to_1_Average, "N to 1 Average")
       
   296     choice(compressALG_Average, "Average")
       
   297     choice(compressALG_Circular_Buffer, "Circular Buffer")
       
   298     choice(compressALG_N_to_1_Median, "N to 1 Median")
       
   299 }
       
   300 menu(asynCONNECT) {
       
   301     choice(asynCONNECT_Disconnect, "Disconnect")
       
   302     choice(asynCONNECT_Connect, "Connect")
       
   303 }
       
   304 menu(ipDRTO) {
       
   305     choice(ipDRTO_unknown, "Unknown")
       
   306     choice(ipDRTO_No, "No")
       
   307     choice(ipDRTO_Yes, "Yes")
       
   308 }
       
   309 menu(acalcoutOOPT) {
       
   310     choice(acalcoutOOPT_Every_Time, "Every Time")
       
   311     choice(acalcoutOOPT_On_Change, "On Change")
       
   312     choice(acalcoutOOPT_When_Zero, "When Zero")
       
   313     choice(acalcoutOOPT_When_Non_zero, "When Non-zero")
       
   314     choice(acalcoutOOPT_Transition_To_Zero, "Transition To Zero")
       
   315     choice(acalcoutOOPT_Transition_To_Non_zero, "Transition To Non-zero")
       
   316     choice(acalcoutOOPT_Never, "Never")
       
   317 }
       
   318 menu(menuIvoa) {
       
   319     choice(menuIvoaContinue_normally, "Continue normally")
       
   320     choice(menuIvoaDon_t_drive_outputs, "Don't drive outputs")
       
   321     choice(menuIvoaSet_output_to_IVOV, "Set output to IVOV")
       
   322 }
       
   323 menu(aSubEFLG) {
       
   324     choice(aSubEFLG_NEVER, "NEVER")
       
   325     choice(aSubEFLG_ON_CHANGE, "ON CHANGE")
       
   326     choice(aSubEFLG_ALWAYS, "ALWAYS")
   343 }
   327 }
   344 menu(gpibACMD) {
   328 menu(gpibACMD) {
   345     choice(gpibACMD_None, "None")
   329     choice(gpibACMD_None, "None")
   346     choice(gpibACMD_Group_Execute_Trig___GET_, "Group Execute Trig. (GET)")
   330     choice(gpibACMD_Group_Execute_Trig___GET_, "Group Execute Trig. (GET)")
   347     choice(gpibACMD_Go_To_Local__GTL_, "Go To Local (GTL)")
   331     choice(gpibACMD_Go_To_Local__GTL_, "Go To Local (GTL)")
   348     choice(gpibACMD_Selected_Dev__Clear__SDC_, "Selected Dev. Clear (SDC)")
   332     choice(gpibACMD_Selected_Dev__Clear__SDC_, "Selected Dev. Clear (SDC)")
   349     choice(gpibACMD_Take_Control__TCT_, "Take Control (TCT)")
   333     choice(gpibACMD_Take_Control__TCT_, "Take Control (TCT)")
   350     choice(gpibACMD_Serial_Poll, "Serial Poll")
   334     choice(gpibACMD_Serial_Poll, "Serial Poll")
   351 }
   335 }
   352 menu(dfanoutSELM) {
   336 menu(menuPini) {
   353     choice(dfanoutSELM_All, "All")
   337     choice(menuPiniNO, "NO")
   354     choice(dfanoutSELM_Specified, "Specified")
   338     choice(menuPiniYES, "YES")
   355     choice(dfanoutSELM_Mask, "Mask")
   339     choice(menuPiniRUN, "RUN")
       
   340     choice(menuPiniRUNNING, "RUNNING")
       
   341     choice(menuPiniPAUSE, "PAUSE")
       
   342     choice(menuPiniPAUSED, "PAUSED")
   356 }
   343 }
   357 menu(asynTRACE) {
   344 menu(scalcoutINAV) {
   358     choice(asynTRACE_Off, "Off")
   345     choice(scalcoutINAV_EXT_NC, "Ext PV NC")
   359     choice(asynTRACE_On, "On")
   346     choice(scalcoutINAV_EXT, "Ext PV OK")
       
   347     choice(scalcoutINAV_LOC, "Local PV")
       
   348     choice(scalcoutINAV_CON, "Constant")
       
   349 }
       
   350 menu(acalcoutSIZE) {
       
   351     choice(acalcoutSIZE_NELM, "NELM")
       
   352     choice(acalcoutSIZE_NUSE, "NUSE")
   360 }
   353 }
   361 menu(acalcoutINAV) {
   354 menu(acalcoutINAV) {
   362     choice(acalcoutINAV_EXT_NC, "Ext PV NC")
   355     choice(acalcoutINAV_EXT_NC, "Ext PV NC")
   363     choice(acalcoutINAV_EXT, "Ext PV OK")
   356     choice(acalcoutINAV_EXT, "Ext PV OK")
   364     choice(acalcoutINAV_LOC, "Local PV")
   357     choice(acalcoutINAV_LOC, "Local PV")
   365     choice(acalcoutINAV_CON, "Constant")
   358     choice(acalcoutINAV_CON, "Constant")
   366 }
   359 }
   367 menu(asynTMOD) {
   360 menu(selSELM) {
   368     choice(asynTMOD_Write_Read, "Write/Read")
   361     choice(selSELM_Specified, "Specified")
   369     choice(asynTMOD_Write, "Write")
   362     choice(selSELM_High_Signal, "High Signal")
   370     choice(asynTMOD_Read, "Read")
   363     choice(selSELM_Low_Signal, "Low Signal")
   371     choice(asynTMOD_Flush, "Flush")
   364     choice(selSELM_Median_Signal, "Median Signal")
   372     choice(asynTMOD_NoIO, "NoI/O")
       
   373 }
   365 }
   374 menu(scalcoutWAIT) {
   366 menu(scalcoutDOPT) {
   375     choice(scalcoutWAIT_NoWait, "NoWait")
   367     choice(scalcoutDOPT_Use_VAL, "Use CALC")
   376     choice(scalcoutWAIT_Wait, "Wait")
   368     choice(scalcoutDOPT_Use_OVAL, "Use OCAL")
   377 }
   369 }
   378 menu(menuIvoa) {
   370 menu(aoOIF) {
   379     choice(menuIvoaContinue_normally, "Continue normally")
   371     choice(aoOIF_Full, "Full")
   380     choice(menuIvoaDon_t_drive_outputs, "Don't drive outputs")
   372     choice(aoOIF_Incremental, "Incremental")
   381     choice(menuIvoaSet_output_to_IVOV, "Set output to IVOV")
       
   382 }
   373 }
   383 menu(stringoutPOST) {
   374 menu(asynINTERFACE) {
   384     choice(stringoutPOST_OnChange, "On Change")
   375     choice(asynINTERFACE_OCTET, "asynOctet")
   385     choice(stringoutPOST_Always, "Always")
   376     choice(asynINTERFACE_INT32, "asynInt32")
       
   377     choice(asynINTERFACE_UINT32, "asynUInt32Digital")
       
   378     choice(asynINTERFACE_FLOAT64, "asynFloat64")
   386 }
   379 }
   387 menu(serialSBIT) {
   380 menu(acalcoutINAP) {
   388     choice(serialSBIT_unknown, "Unknown")
   381     choice(acalcoutINAP_No, "No PROC on Change")
   389     choice(serialSBIT_1, "1")
   382     choice(acalcoutINAP_Yes, "PROC on Change")
   390     choice(serialSBIT_2, "2")
   383 }
       
   384 menu(aaiPOST) {
       
   385     choice(aaiPOST_Always, "Always")
       
   386     choice(aaiPOST_OnChange, "On Change")
       
   387 }
       
   388 menu(calcoutOOPT) {
       
   389     choice(calcoutOOPT_Every_Time, "Every Time")
       
   390     choice(calcoutOOPT_On_Change, "On Change")
       
   391     choice(calcoutOOPT_When_Zero, "When Zero")
       
   392     choice(calcoutOOPT_When_Non_zero, "When Non-zero")
       
   393     choice(calcoutOOPT_Transition_To_Zero, "Transition To Zero")
       
   394     choice(calcoutOOPT_Transition_To_Non_zero, "Transition To Non-zero")
   391 }
   395 }
   392 menu(acalcoutWAIT) {
   396 menu(acalcoutWAIT) {
   393     choice(acalcoutWAIT_NoWait, "NoWait")
   397     choice(acalcoutWAIT_NoWait, "NoWait")
   394     choice(acalcoutWAIT_Wait, "Wait")
   398     choice(acalcoutWAIT_Wait, "Wait")
   395 }
       
   396 menu(fanoutSELM) {
       
   397     choice(fanoutSELM_All, "All")
       
   398     choice(fanoutSELM_Specified, "Specified")
       
   399     choice(fanoutSELM_Mask, "Mask")
       
   400 }
       
   401 menu(serialPRTY) {
       
   402     choice(serialPRTY_unknown, "Unknown")
       
   403     choice(serialPRTY_None, "None")
       
   404     choice(serialPRTY_Even, "Even")
       
   405     choice(serialPRTY_Odd, "Odd")
       
   406 }
   399 }
   407 menu(serialBAUD) {
   400 menu(serialBAUD) {
   408     choice(serialBAUD_unknown, "Unknown")
   401     choice(serialBAUD_unknown, "Unknown")
   409     choice(serialBAUD_300, "300")
   402     choice(serialBAUD_300, "300")
   410     choice(serialBAUD_600, "600")
   403     choice(serialBAUD_600, "600")
   420     choice(serialBAUD_460800, "460800")
   413     choice(serialBAUD_460800, "460800")
   421     choice(serialBAUD_576000, "576000")
   414     choice(serialBAUD_576000, "576000")
   422     choice(serialBAUD_921600, "921600")
   415     choice(serialBAUD_921600, "921600")
   423     choice(serialBAUD_1152000, "1152000")
   416     choice(serialBAUD_1152000, "1152000")
   424 }
   417 }
   425 menu(asynEOMREASON) {
   418 menu(swaitDOPT) {
   426     choice(asynEOMREASONNone, "None")
   419     choice(swaitDOPT_Use_VAL, "Use VAL")
   427     choice(asynEOMREASONCNT, "Count")
   420     choice(swaitDOPT_Use_DOL, "Use DOL")
   428     choice(asynEOMREASONEOS, "Eos")
       
   429     choice(asynEOMREASONCNTEOS, "Count Eos")
       
   430     choice(asynEOMREASONEND, "End")
       
   431     choice(asynEOMREASONCNTEND, "Count End")
       
   432     choice(asynEOMREASONEOSEND, "Eos End")
       
   433     choice(asynEOMREASONCNTEOSEND, "Count Eos End")
       
   434 }
   421 }
   435 recordtype(int64in) {
   422 menu(fanoutSELM) {
       
   423     choice(fanoutSELM_All, "All")
       
   424     choice(fanoutSELM_Specified, "Specified")
       
   425     choice(fanoutSELM_Mask, "Mask")
       
   426 }
       
   427 menu(asynAUTOCONNECT) {
       
   428     choice(asynAUTOCONNECT_noAutoConnect, "noAutoConnect")
       
   429     choice(asynAUTOCONNECT_autoConnect, "autoConnect")
       
   430 }
       
   431 menu(menuOmsl) {
       
   432     choice(menuOmslsupervisory, "supervisory")
       
   433     choice(menuOmslclosed_loop, "closed_loop")
       
   434 }
       
   435 recordtype(busy) {
   436     %#include "epicsTypes.h"
   436     %#include "epicsTypes.h"
   437     %#include "link.h"
   437     %#include "link.h"
   438     %#include "epicsMutex.h"
   438     %#include "epicsMutex.h"
   439     %#include "ellLib.h"
   439     %#include "ellLib.h"
   440     %#include "epicsTime.h"
   440     %#include "epicsTime.h"
   441     %#include "callback.h"
       
   442     field(NAME, DBF_STRING) {
   441     field(NAME, DBF_STRING) {
       
   442         special(SPC_NOMOD)
       
   443         prompt("Record Name")
   443         size(61)
   444         size(61)
   444         special(SPC_NOMOD)
       
   445         prompt("Record Name")
       
   446     }
   445     }
   447     field(DESC, DBF_STRING) {
   446     field(DESC, DBF_STRING) {
       
   447         promptgroup("10 - Common")
       
   448         prompt("Descriptor")
   448         size(41)
   449         size(41)
   449         promptgroup("10 - Common")
       
   450         prompt("Descriptor")
       
   451     }
   450     }
   452     field(ASG, DBF_STRING) {
   451     field(ASG, DBF_STRING) {
       
   452         prompt("Access Security Group")
   453         size(29)
   453         size(29)
   454         prompt("Access Security Group")
       
   455         promptgroup("10 - Common")
   454         promptgroup("10 - Common")
   456         special(SPC_AS)
   455         special(SPC_AS)
   457     }
   456     }
   458     field(SCAN, DBF_MENU) {
   457     field(SCAN, DBF_MENU) {
       
   458         promptgroup("20 - Scan")
       
   459         special(SPC_SCAN)
       
   460         interest(1)
       
   461         menu(menuScan)
   459         prompt("Scan Mechanism")
   462         prompt("Scan Mechanism")
   460         interest(1)
   463     }
       
   464     field(PINI, DBF_MENU) {
       
   465         promptgroup("20 - Scan")
       
   466         interest(1)
       
   467         menu(menuPini)
       
   468         prompt("Process at iocInit")
       
   469     }
       
   470     field(PHAS, DBF_SHORT) {
   461         special(SPC_SCAN)
   471         special(SPC_SCAN)
   462         promptgroup("20 - Scan")
   472         interest(1)
   463         menu(menuScan)
       
   464     }
       
   465     field(PINI, DBF_MENU) {
       
   466         prompt("Process at iocInit")
       
   467         interest(1)
       
   468         promptgroup("20 - Scan")
       
   469         menu(menuPini)
       
   470     }
       
   471     field(PHAS, DBF_SHORT) {
       
   472         interest(1)
       
   473         special(SPC_SCAN)
       
   474         promptgroup("20 - Scan")
   473         promptgroup("20 - Scan")
   475         prompt("Scan Phase")
   474         prompt("Scan Phase")
   476     }
   475     }
   477     field(EVNT, DBF_STRING) {
   476     field(EVNT, DBF_STRING) {
   478         size(40)
   477         size(40)
       
   478         prompt("Event Name")
   479         special(SPC_SCAN)
   479         special(SPC_SCAN)
   480         interest(1)
   480         interest(1)
   481         promptgroup("20 - Scan")
   481         promptgroup("20 - Scan")
   482         prompt("Event Name")
       
   483     }
   482     }
   484     field(TSE, DBF_SHORT) {
   483     field(TSE, DBF_SHORT) {
   485         interest(1)
       
   486         promptgroup("20 - Scan")
       
   487         prompt("Time Stamp Event")
   484         prompt("Time Stamp Event")
       
   485         interest(1)
       
   486         promptgroup("20 - Scan")
   488     }
   487     }
   489     field(TSEL, DBF_INLINK) {
   488     field(TSEL, DBF_INLINK) {
   490         promptgroup("20 - Scan")
       
   491         interest(1)
       
   492         prompt("Time Stamp Link")
   489         prompt("Time Stamp Link")
       
   490         interest(1)
       
   491         promptgroup("20 - Scan")
   493     }
   492     }
   494     field(DTYP, DBF_DEVICE) {
   493     field(DTYP, DBF_DEVICE) {
   495         prompt("Device Type")
   494         prompt("Device Type")
   496         interest(1)
   495         interest(1)
   497         promptgroup("10 - Common")
   496         promptgroup("10 - Common")
   498     }
   497     }
   499     field(DISV, DBF_SHORT) {
   498     field(DISV, DBF_SHORT) {
   500         initial("1")
   499         promptgroup("20 - Scan")
   501         prompt("Disable Value")
   500         prompt("Disable Value")
   502         promptgroup("20 - Scan")
   501         initial("1")
   503     }
   502     }
   504     field(DISA, DBF_SHORT) {
   503     field(DISA, DBF_SHORT) {
   505         prompt("Disable")
   504         prompt("Disable")
   506     }
   505     }
   507     field(SDIS, DBF_INLINK) {
   506     field(SDIS, DBF_INLINK) {
   508         prompt("Scanning Disable")
   507         prompt("Scanning Disable")
   509         interest(1)
   508         interest(1)
   510         promptgroup("20 - Scan")
   509         promptgroup("20 - Scan")
   511     }
   510     }
   512     field(MLOK, DBF_NOACCESS) {
   511     field(MLOK, DBF_NOACCESS) {
       
   512         interest(4)
       
   513         special(SPC_NOMOD)
   513         extra("epicsMutexId        mlok")
   514         extra("epicsMutexId        mlok")
   514         prompt("Monitor lock")
   515         prompt("Monitor lock")
   515         interest(4)
       
   516         special(SPC_NOMOD)
       
   517     }
   516     }
   518     field(MLIS, DBF_NOACCESS) {
   517     field(MLIS, DBF_NOACCESS) {
       
   518         special(SPC_NOMOD)
       
   519         interest(4)
   519         extra("ELLLIST             mlis")
   520         extra("ELLLIST             mlis")
   520         special(SPC_NOMOD)
       
   521         interest(4)
       
   522         prompt("Monitor List")
   521         prompt("Monitor List")
   523     }
   522     }
   524     field(BKLNK, DBF_NOACCESS) {
   523     field(BKLNK, DBF_NOACCESS) {
       
   524         prompt("Backwards link tracking")
   525         extra("ELLLIST             bklnk")
   525         extra("ELLLIST             bklnk")
   526         special(SPC_NOMOD)
   526         special(SPC_NOMOD)
   527         interest(4)
   527         interest(4)
   528         prompt("Backwards link tracking")
       
   529     }
   528     }
   530     field(DISP, DBF_UCHAR) {
   529     field(DISP, DBF_UCHAR) {
   531         prompt("Disable putField")
   530         prompt("Disable putField")
   532     }
   531     }
   533     field(PROC, DBF_UCHAR) {
   532     field(PROC, DBF_UCHAR) {
       
   533         interest(3)
       
   534         pp(TRUE)
   534         prompt("Force Processing")
   535         prompt("Force Processing")
   535         interest(3)
       
   536         pp(TRUE)
       
   537     }
   536     }
   538     field(STAT, DBF_MENU) {
   537     field(STAT, DBF_MENU) {
   539         prompt("Alarm Status")
       
   540         special(SPC_NOMOD)
   538         special(SPC_NOMOD)
   541         menu(menuAlarmStat)
   539         menu(menuAlarmStat)
   542         initial("UDF")
   540         initial("UDF")
       
   541         prompt("Alarm Status")
   543     }
   542     }
   544     field(SEVR, DBF_MENU) {
   543     field(SEVR, DBF_MENU) {
   545         menu(menuAlarmSevr)
   544         menu(menuAlarmSevr)
       
   545         special(SPC_NOMOD)
   546         prompt("Alarm Severity")
   546         prompt("Alarm Severity")
   547         special(SPC_NOMOD)
       
   548     }
   547     }
   549     field(NSTA, DBF_MENU) {
   548     field(NSTA, DBF_MENU) {
   550         special(SPC_NOMOD)
       
   551         interest(2)
       
   552         prompt("New Alarm Status")
   549         prompt("New Alarm Status")
       
   550         special(SPC_NOMOD)
       
   551         interest(2)
   553         menu(menuAlarmStat)
   552         menu(menuAlarmStat)
   554     }
   553     }
   555     field(NSEV, DBF_MENU) {
   554     field(NSEV, DBF_MENU) {
   556         menu(menuAlarmSevr)
   555         interest(2)
       
   556         menu(menuAlarmSevr)
       
   557         special(SPC_NOMOD)
   557         prompt("New Alarm Severity")
   558         prompt("New Alarm Severity")
   558         special(SPC_NOMOD)
       
   559         interest(2)
       
   560     }
   559     }
   561     field(ACKS, DBF_MENU) {
   560     field(ACKS, DBF_MENU) {
   562         menu(menuAlarmSevr)
       
   563         prompt("Alarm Ack Severity")
   561         prompt("Alarm Ack Severity")
   564         special(SPC_NOMOD)
   562         special(SPC_NOMOD)
       
   563         menu(menuAlarmSevr)
   565         interest(2)
   564         interest(2)
   566     }
   565     }
   567     field(ACKT, DBF_MENU) {
   566     field(ACKT, DBF_MENU) {
   568         initial("YES")
   567         initial("YES")
       
   568         prompt("Alarm Ack Transient")
       
   569         special(SPC_NOMOD)
       
   570         interest(2)
   569         menu(menuYesNo)
   571         menu(menuYesNo)
   570         prompt("Alarm Ack Transient")
   572         promptgroup("70 - Alarm")
   571         promptgroup("70 - Alarm")
       
   572         interest(2)
       
   573         special(SPC_NOMOD)
       
   574     }
   573     }
   575     field(DISS, DBF_MENU) {
   574     field(DISS, DBF_MENU) {
   576         prompt("Disable Alarm Sevrty")
   575         prompt("Disable Alarm Sevrty")
   577         promptgroup("70 - Alarm")
   576         interest(1)
   578         interest(1)
   577         menu(menuAlarmSevr)
   579         menu(menuAlarmSevr)
   578         promptgroup("70 - Alarm")
   580     }
   579     }
   581     field(LCNT, DBF_UCHAR) {
   580     field(LCNT, DBF_UCHAR) {
   582         prompt("Lock Count")
   581         prompt("Lock Count")
   583         interest(2)
   582         special(SPC_NOMOD)
   584         special(SPC_NOMOD)
   583         interest(2)
   585     }
   584     }
   586     field(PACT, DBF_UCHAR) {
   585     field(PACT, DBF_UCHAR) {
   587         interest(1)
       
   588         special(SPC_NOMOD)
       
   589         prompt("Record active")
   586         prompt("Record active")
       
   587         special(SPC_NOMOD)
       
   588         interest(1)
   590     }
   589     }
   591     field(PUTF, DBF_UCHAR) {
   590     field(PUTF, DBF_UCHAR) {
   592         prompt("dbPutField process")
   591         prompt("dbPutField process")
   593         special(SPC_NOMOD)
   592         interest(1)
   594         interest(1)
   593         special(SPC_NOMOD)
   595     }
   594     }
   596     field(RPRO, DBF_UCHAR) {
   595     field(RPRO, DBF_UCHAR) {
   597         prompt("Reprocess ")
   596         prompt("Reprocess ")
   598         interest(1)
   597         interest(1)
   599         special(SPC_NOMOD)
   598         special(SPC_NOMOD)
   600     }
   599     }
   601     field(ASP, DBF_NOACCESS) {
   600     field(ASP, DBF_NOACCESS) {
   602         extra("struct asgMember    *asp")
   601         extra("struct asgMember    *asp")
   603         prompt("Access Security Pvt")
   602         prompt("Access Security Pvt")
   604         special(SPC_NOMOD)
   603         interest(4)
   605         interest(4)
   604         special(SPC_NOMOD)
   606     }
   605     }
   607     field(PPN, DBF_NOACCESS) {
   606     field(PPN, DBF_NOACCESS) {
       
   607         interest(4)
       
   608         special(SPC_NOMOD)
   608         prompt("pprocessNotify")
   609         prompt("pprocessNotify")
   609         special(SPC_NOMOD)
       
   610         interest(4)
       
   611         extra("struct processNotify *ppn")
   610         extra("struct processNotify *ppn")
   612     }
   611     }
   613     field(PPNR, DBF_NOACCESS) {
   612     field(PPNR, DBF_NOACCESS) {
       
   613         interest(4)
       
   614         special(SPC_NOMOD)
       
   615         prompt("pprocessNotifyRecord")
   614         extra("struct processNotifyRecord *ppnr")
   616         extra("struct processNotifyRecord *ppnr")
   615         special(SPC_NOMOD)
       
   616         interest(4)
       
   617         prompt("pprocessNotifyRecord")
       
   618     }
   617     }
   619     field(SPVT, DBF_NOACCESS) {
   618     field(SPVT, DBF_NOACCESS) {
   620         extra("struct scan_element *spvt")
   619         extra("struct scan_element *spvt")
   621         interest(4)
       
   622         special(SPC_NOMOD)
       
   623         prompt("Scan Private")
   620         prompt("Scan Private")
       
   621         interest(4)
       
   622         special(SPC_NOMOD)
   624     }
   623     }
   625     field(RSET, DBF_NOACCESS) {
   624     field(RSET, DBF_NOACCESS) {
       
   625         interest(4)
       
   626         special(SPC_NOMOD)
       
   627         extra("struct typed_rset   *rset")
   626         prompt("Address of RSET")
   628         prompt("Address of RSET")
   627         interest(4)
       
   628         special(SPC_NOMOD)
       
   629         extra("struct typed_rset   *rset")
       
   630     }
   629     }
   631     field(DSET, DBF_NOACCESS) {
   630     field(DSET, DBF_NOACCESS) {
       
   631         special(SPC_NOMOD)
       
   632         interest(4)
       
   633         prompt("DSET address")
   632         extra("struct dset         *dset")
   634         extra("struct dset         *dset")
   633         special(SPC_NOMOD)
       
   634         interest(4)
       
   635         prompt("DSET address")
       
   636     }
   635     }
   637     field(DPVT, DBF_NOACCESS) {
   636     field(DPVT, DBF_NOACCESS) {
       
   637         prompt("Device Private")
   638         extra("void                *dpvt")
   638         extra("void                *dpvt")
   639         prompt("Device Private")
   639         interest(4)
   640         special(SPC_NOMOD)
   640         special(SPC_NOMOD)
   641         interest(4)
       
   642     }
   641     }
   643     field(RDES, DBF_NOACCESS) {
   642     field(RDES, DBF_NOACCESS) {
   644         interest(4)
   643         extra("struct dbRecordType *rdes")
   645         special(SPC_NOMOD)
       
   646         prompt("Address of dbRecordType")
   644         prompt("Address of dbRecordType")
   647         extra("struct dbRecordType *rdes")
   645         special(SPC_NOMOD)
       
   646         interest(4)
   648     }
   647     }
   649     field(LSET, DBF_NOACCESS) {
   648     field(LSET, DBF_NOACCESS) {
       
   649         interest(4)
       
   650         special(SPC_NOMOD)
   650         extra("struct lockRecord   *lset")
   651         extra("struct lockRecord   *lset")
   651         special(SPC_NOMOD)
       
   652         interest(4)
       
   653         prompt("Lock Set")
   652         prompt("Lock Set")
   654     }
   653     }
   655     field(PRIO, DBF_MENU) {
   654     field(PRIO, DBF_MENU) {
   656         menu(menuPriority)
   655         menu(menuPriority)
   657         interest(1)
   656         interest(1)
   661     }
   660     }
   662     field(TPRO, DBF_UCHAR) {
   661     field(TPRO, DBF_UCHAR) {
   663         prompt("Trace Processing")
   662         prompt("Trace Processing")
   664     }
   663     }
   665     field(BKPT, DBF_NOACCESS) {
   664     field(BKPT, DBF_NOACCESS) {
   666         interest(1)
   665         special(SPC_NOMOD)
   667         special(SPC_NOMOD)
   666         interest(1)
   668         prompt("Break Point")
   667         prompt("Break Point")
   669         extra("char                bkpt")
   668         extra("char                bkpt")
   670     }
   669     }
   671     field(UDF, DBF_UCHAR) {
   670     field(UDF, DBF_UCHAR) {
   672         prompt("Undefined")
   671         prompt("Undefined")
   673         interest(1)
   672         initial("1")
   674         promptgroup("10 - Common")
   673         pp(TRUE)
   675         pp(TRUE)
   674         promptgroup("10 - Common")
   676         initial("1")
   675         interest(1)
   677     }
   676     }
   678     field(UDFS, DBF_MENU) {
   677     field(UDFS, DBF_MENU) {
   679         initial("INVALID")
   678         initial("INVALID")
   680         prompt("Undefined Alarm Sevrty")
   679         prompt("Undefined Alarm Sevrty")
   681         interest(1)
   680         menu(menuAlarmSevr)
   682         promptgroup("70 - Alarm")
   681         interest(1)
   683         menu(menuAlarmSevr)
   682         promptgroup("70 - Alarm")
   684     }
   683     }
   685     field(TIME, DBF_NOACCESS) {
   684     field(TIME, DBF_NOACCESS) {
       
   685         prompt("Time")
   686         extra("epicsTimeStamp      time")
   686         extra("epicsTimeStamp      time")
   687         prompt("Time")
   687         interest(2)
   688         special(SPC_NOMOD)
   688         special(SPC_NOMOD)
   689         interest(2)
       
   690     }
   689     }
   691     field(FLNK, DBF_FWDLINK) {
   690     field(FLNK, DBF_FWDLINK) {
       
   691         promptgroup("20 - Scan")
       
   692         interest(1)
   692         prompt("Forward Process Link")
   693         prompt("Forward Process Link")
   693         interest(1)
   694     }
   694         promptgroup("20 - Scan")
   695     field(VAL, DBF_ENUM) {
   695     }
   696         pp(TRUE)
   696     field(VAL, DBF_INT64) {
   697         promptgroup("50 - Output")
   697         asl(ASL0)
   698         asl(ASL0)
   698         prompt("Current value")
   699         prompt("Current Value")
       
   700     }
       
   701     field(OMSL, DBF_MENU) {
       
   702         prompt("Output Mode Select")
       
   703         promptgroup("50 - Output")
       
   704         menu(menuOmsl)
       
   705         interest(1)
       
   706     }
       
   707     field(DOL, DBF_INLINK) {
       
   708         prompt("Desired Output Loc")
       
   709         promptgroup("50 - Output")
       
   710         interest(1)
       
   711     }
       
   712     field(OUT, DBF_OUTLINK) {
       
   713         prompt("Output Specification")
       
   714         promptgroup("50 - Output")
       
   715         interest(1)
       
   716     }
       
   717     field(HIGH, DBF_DOUBLE) {
       
   718         prompt("Seconds to Hold High")
       
   719         interest(1)
       
   720         promptgroup("50 - Output")
       
   721     }
       
   722     field(ZNAM, DBF_STRING) {
       
   723         pp(TRUE)
       
   724         promptgroup("80 - Display")
       
   725         interest(1)
       
   726         prompt("Zero Name")
       
   727         size(26)
       
   728         initial("Done")
       
   729     }
       
   730     field(ONAM, DBF_STRING) {
       
   731         promptgroup("80 - Display")
       
   732         pp(TRUE)
       
   733         interest(1)
       
   734         prompt("One Name")
       
   735         size(26)
       
   736         initial("Busy")
       
   737     }
       
   738     field(RVAL, DBF_ULONG) {
       
   739         prompt("Raw Value")
       
   740         pp(TRUE)
       
   741     }
       
   742     field(ORAW, DBF_ULONG) {
       
   743         special(SPC_NOMOD)
       
   744         interest(3)
       
   745         prompt("prev Raw Value")
       
   746     }
       
   747     field(OVAL, DBF_ULONG) {
       
   748         special(SPC_NOMOD)
       
   749         interest(3)
       
   750         prompt("prev Value")
       
   751     }
       
   752     field(MASK, DBF_ULONG) {
       
   753         interest(1)
       
   754         special(SPC_NOMOD)
       
   755         promptgroup("50 - Output")
       
   756         prompt("Hardware Mask")
       
   757     }
       
   758     field(RPVT, DBF_NOACCESS) {
       
   759         prompt("Record Private")
       
   760         extra("void *  rpvt")
       
   761         special(SPC_NOMOD)
       
   762         interest(4)
       
   763     }
       
   764     field(WDPT, DBF_NOACCESS) {
       
   765         extra("void *	wdpt")
       
   766         prompt("Watch Dog Timer ID")
       
   767         interest(4)
       
   768         special(SPC_NOMOD)
       
   769     }
       
   770     field(ZSV, DBF_MENU) {
       
   771         promptgroup("70 - Alarm")
       
   772         pp(TRUE)
       
   773         menu(menuAlarmSevr)
       
   774         interest(1)
       
   775         prompt("Zero Error Severity")
       
   776     }
       
   777     field(OSV, DBF_MENU) {
       
   778         prompt("One Error Severity")
       
   779         menu(menuAlarmSevr)
       
   780         interest(1)
       
   781         promptgroup("70 - Alarm")
       
   782         pp(TRUE)
       
   783     }
       
   784     field(COSV, DBF_MENU) {
       
   785         pp(TRUE)
       
   786         promptgroup("70 - Alarm")
       
   787         menu(menuAlarmSevr)
       
   788         interest(1)
       
   789         prompt("Change of State Sevr")
       
   790     }
       
   791     field(RBV, DBF_ULONG) {
       
   792         prompt("Readback Value")
       
   793         special(SPC_NOMOD)
       
   794     }
       
   795     field(ORBV, DBF_ULONG) {
       
   796         prompt("Prev Readback Value")
       
   797         interest(3)
       
   798         special(SPC_NOMOD)
       
   799     }
       
   800     field(MLST, DBF_USHORT) {
       
   801         prompt("Last Value Monitored")
       
   802         special(SPC_NOMOD)
       
   803         interest(3)
       
   804     }
       
   805     field(LALM, DBF_USHORT) {
       
   806         special(SPC_NOMOD)
       
   807         interest(3)
       
   808         prompt("Last Value Alarmed")
       
   809     }
       
   810     field(SIOL, DBF_OUTLINK) {
       
   811         prompt("Sim Output Specifctn")
       
   812         interest(1)
   699         promptgroup("40 - Input")
   813         promptgroup("40 - Input")
   700         pp(TRUE)
   814     }
   701     }
   815     field(SIML, DBF_INLINK) {
   702     field(INP, DBF_INLINK) {
   816         prompt("Sim Mode Location")
       
   817         interest(1)
   703         promptgroup("40 - Input")
   818         promptgroup("40 - Input")
   704         interest(1)
       
   705         prompt("Input Specification")
       
   706     }
       
   707     field(EGU, DBF_STRING) {
       
   708         prop(YES)
       
   709         promptgroup("80 - Display")
       
   710         interest(1)
       
   711         prompt("Units name")
       
   712         size(16)
       
   713     }
       
   714     field(HOPR, DBF_INT64) {
       
   715         prompt("High Operating Range")
       
   716         prop(YES)
       
   717         interest(1)
       
   718         promptgroup("80 - Display")
       
   719     }
       
   720     field(LOPR, DBF_INT64) {
       
   721         prompt("Low Operating Range")
       
   722         interest(1)
       
   723         prop(YES)
       
   724         promptgroup("80 - Display")
       
   725     }
       
   726     field(HIHI, DBF_INT64) {
       
   727         prompt("Hihi Alarm Limit")
       
   728         prop(YES)
       
   729         interest(1)
       
   730         promptgroup("70 - Alarm")
       
   731         pp(TRUE)
       
   732     }
       
   733     field(LOLO, DBF_INT64) {
       
   734         prompt("Lolo Alarm Limit")
       
   735         promptgroup("70 - Alarm")
       
   736         prop(YES)
       
   737         interest(1)
       
   738         pp(TRUE)
       
   739     }
       
   740     field(HIGH, DBF_INT64) {
       
   741         prompt("High Alarm Limit")
       
   742         prop(YES)
       
   743         promptgroup("70 - Alarm")
       
   744         interest(1)
       
   745         pp(TRUE)
       
   746     }
       
   747     field(LOW, DBF_INT64) {
       
   748         prompt("Low Alarm Limit")
       
   749         prop(YES)
       
   750         interest(1)
       
   751         promptgroup("70 - Alarm")
       
   752         pp(TRUE)
       
   753     }
       
   754     field(HHSV, DBF_MENU) {
       
   755         pp(TRUE)
       
   756         prompt("Hihi Severity")
       
   757         promptgroup("70 - Alarm")
       
   758         interest(1)
       
   759         menu(menuAlarmSevr)
       
   760     }
       
   761     field(LLSV, DBF_MENU) {
       
   762         menu(menuAlarmSevr)
       
   763         interest(1)
       
   764         promptgroup("70 - Alarm")
       
   765         prompt("Lolo Severity")
       
   766         pp(TRUE)
       
   767     }
       
   768     field(HSV, DBF_MENU) {
       
   769         prompt("High Severity")
       
   770         promptgroup("70 - Alarm")
       
   771         interest(1)
       
   772         menu(menuAlarmSevr)
       
   773         pp(TRUE)
       
   774     }
       
   775     field(LSV, DBF_MENU) {
       
   776         menu(menuAlarmSevr)
       
   777         prompt("Low Severity")
       
   778         interest(1)
       
   779         promptgroup("70 - Alarm")
       
   780         pp(TRUE)
       
   781     }
       
   782     field(HYST, DBF_INT64) {
       
   783         prompt("Alarm Deadband")
       
   784         promptgroup("70 - Alarm")
       
   785         interest(1)
       
   786     }
       
   787     field(AFTC, DBF_DOUBLE) {
       
   788         interest(1)
       
   789         promptgroup("70 - Alarm")
       
   790         prompt("Alarm Filter Time Constant")
       
   791     }
       
   792     field(AFVL, DBF_DOUBLE) {
       
   793         prompt("Alarm Filter Value")
       
   794         special(SPC_NOMOD)
       
   795         interest(3)
       
   796     }
       
   797     field(ADEL, DBF_INT64) {
       
   798         prompt("Archive Deadband")
       
   799         interest(1)
       
   800         promptgroup("80 - Display")
       
   801     }
       
   802     field(MDEL, DBF_INT64) {
       
   803         interest(1)
       
   804         promptgroup("80 - Display")
       
   805         prompt("Monitor Deadband")
       
   806     }
       
   807     field(LALM, DBF_INT64) {
       
   808         prompt("Last Value Alarmed")
       
   809         interest(3)
       
   810         special(SPC_NOMOD)
       
   811     }
       
   812     field(ALST, DBF_INT64) {
       
   813         special(SPC_NOMOD)
       
   814         interest(3)
       
   815         prompt("Last Value Archived")
       
   816     }
       
   817     field(MLST, DBF_INT64) {
       
   818         interest(3)
       
   819         special(SPC_NOMOD)
       
   820         prompt("Last Val Monitored")
       
   821     }
       
   822     field(SIOL, DBF_INLINK) {
       
   823         interest(1)
       
   824         promptgroup("90 - Simulate")
       
   825         prompt("Simulation Input Link")
       
   826     }
       
   827     field(SVAL, DBF_INT64) {
       
   828         prompt("Simulation Value")
       
   829     }
       
   830     field(SIML, DBF_INLINK) {
       
   831         prompt("Simulation Mode Link")
       
   832         interest(1)
       
   833         promptgroup("90 - Simulate")
       
   834     }
   819     }
   835     field(SIMM, DBF_MENU) {
   820     field(SIMM, DBF_MENU) {
       
   821         prompt("Simulation Mode")
       
   822         interest(1)
   836         menu(menuYesNo)
   823         menu(menuYesNo)
   837         prompt("Simulation Mode")
       
   838         special(SPC_MOD)
       
   839         interest(1)
       
   840     }
   824     }
   841     field(SIMS, DBF_MENU) {
   825     field(SIMS, DBF_MENU) {
   842         interest(2)
   826         prompt("Sim mode Alarm Svrty")
   843         promptgroup("90 - Simulate")
   827         menu(menuAlarmSevr)
   844         prompt("Simulation Mode Severity")
   828         interest(2)
   845         menu(menuAlarmSevr)
   829         promptgroup("40 - Input")
   846     }
   830     }
   847     field(OLDSIMM, DBF_MENU) {
   831     field(IVOA, DBF_MENU) {
   848         prompt("Prev. Simulation Mode")
   832         prompt("INVALID outpt action")
   849         special(SPC_NOMOD)
   833         promptgroup("50 - Output")
   850         interest(4)
   834         menu(menuIvoa)
   851         menu(menuSimm)
   835         interest(2)
   852     }
   836     }
   853     field(SSCN, DBF_MENU) {
   837     field(IVOV, DBF_USHORT) {
   854         promptgroup("90 - Simulate")
   838         interest(2)
   855         interest(1)
   839         promptgroup("50 - Output")
   856         prompt("Sim. Mode Scan")
   840         prompt("INVALID output value")
   857         menu(menuScan)
       
   858         initial("65535")
       
   859     }
       
   860     field(SDLY, DBF_DOUBLE) {
       
   861         initial("-1.0")
       
   862         interest(2)
       
   863         promptgroup("90 - Simulate")
       
   864         prompt("Sim. Mode Async Delay")
       
   865     }
       
   866     field(SIMPVT, DBF_NOACCESS) {
       
   867         prompt("Sim. Mode Private")
       
   868         interest(4)
       
   869         special(SPC_NOMOD)
       
   870         extra("CALLBACK            *simpvt")
       
   871     }
   841     }
   872 }
   842 }
   873 device(int64in, CONSTANT, devI64inSoft, "Soft Channel")
   843 device(busy, CONSTANT, devBusySoft, "Soft Channel")
   874 device(int64in, CONSTANT, devI64inSoftCallback, "Async Soft Channel")
   844 device(busy, CONSTANT, devBusySoftRaw, "Raw Soft Channel")
   875 recordtype(sseq) {
   845 device(busy, INST_IO, asynBusyInt32, "asynInt32")
       
   846 recordtype(compress) {
   876     %#include "epicsTypes.h"
   847     %#include "epicsTypes.h"
   877     %#include "link.h"
   848     %#include "link.h"
   878     %#include "epicsMutex.h"
   849     %#include "epicsMutex.h"
   879     %#include "ellLib.h"
   850     %#include "ellLib.h"
   880     %#include "epicsTime.h"
   851     %#include "epicsTime.h"
   883         prompt("Record Name")
   854         prompt("Record Name")
   884         special(SPC_NOMOD)
   855         special(SPC_NOMOD)
   885     }
   856     }
   886     field(DESC, DBF_STRING) {
   857     field(DESC, DBF_STRING) {
   887         prompt("Descriptor")
   858         prompt("Descriptor")
   888         promptgroup("10 - Common")
       
   889         size(41)
   859         size(41)
       
   860         promptgroup("10 - Common")
   890     }
   861     }
   891     field(ASG, DBF_STRING) {
   862     field(ASG, DBF_STRING) {
       
   863         promptgroup("10 - Common")
       
   864         special(SPC_AS)
       
   865         prompt("Access Security Group")
   892         size(29)
   866         size(29)
   893         prompt("Access Security Group")
       
   894         promptgroup("10 - Common")
       
   895         special(SPC_AS)
       
   896     }
   867     }
   897     field(SCAN, DBF_MENU) {
   868     field(SCAN, DBF_MENU) {
       
   869         prompt("Scan Mechanism")
       
   870         promptgroup("20 - Scan")
       
   871         special(SPC_SCAN)
   898         menu(menuScan)
   872         menu(menuScan)
   899         prompt("Scan Mechanism")
   873         interest(1)
   900         special(SPC_SCAN)
       
   901         interest(1)
       
   902         promptgroup("20 - Scan")
       
   903     }
   874     }
   904     field(PINI, DBF_MENU) {
   875     field(PINI, DBF_MENU) {
   905         promptgroup("20 - Scan")
       
   906         interest(1)
       
   907         prompt("Process at iocInit")
   876         prompt("Process at iocInit")
   908         menu(menuPini)
   877         menu(menuPini)
       
   878         interest(1)
       
   879         promptgroup("20 - Scan")
   909     }
   880     }
   910     field(PHAS, DBF_SHORT) {
   881     field(PHAS, DBF_SHORT) {
   911         promptgroup("20 - Scan")
       
   912         interest(1)
   882         interest(1)
   913         special(SPC_SCAN)
   883         special(SPC_SCAN)
       
   884         promptgroup("20 - Scan")
   914         prompt("Scan Phase")
   885         prompt("Scan Phase")
   915     }
   886     }
   916     field(EVNT, DBF_STRING) {
   887     field(EVNT, DBF_STRING) {
       
   888         size(40)
   917         prompt("Event Name")
   889         prompt("Event Name")
   918         interest(1)
   890         interest(1)
   919         promptgroup("20 - Scan")
       
   920         special(SPC_SCAN)
   891         special(SPC_SCAN)
   921         size(40)
   892         promptgroup("20 - Scan")
   922     }
   893     }
   923     field(TSE, DBF_SHORT) {
   894     field(TSE, DBF_SHORT) {
   924         promptgroup("20 - Scan")
       
   925         interest(1)
       
   926         prompt("Time Stamp Event")
   895         prompt("Time Stamp Event")
       
   896         promptgroup("20 - Scan")
       
   897         interest(1)
   927     }
   898     }
   928     field(TSEL, DBF_INLINK) {
   899     field(TSEL, DBF_INLINK) {
   929         prompt("Time Stamp Link")
   900         prompt("Time Stamp Link")
   930         promptgroup("20 - Scan")
   901         promptgroup("20 - Scan")
   931         interest(1)
   902         interest(1)
   932     }
   903     }
   933     field(DTYP, DBF_DEVICE) {
   904     field(DTYP, DBF_DEVICE) {
       
   905         interest(1)
       
   906         promptgroup("10 - Common")
   934         prompt("Device Type")
   907         prompt("Device Type")
   935         interest(1)
       
   936         promptgroup("10 - Common")
       
   937     }
   908     }
   938     field(DISV, DBF_SHORT) {
   909     field(DISV, DBF_SHORT) {
   939         promptgroup("20 - Scan")
       
   940         prompt("Disable Value")
   910         prompt("Disable Value")
   941         initial("1")
   911         initial("1")
       
   912         promptgroup("20 - Scan")
   942     }
   913     }
   943     field(DISA, DBF_SHORT) {
   914     field(DISA, DBF_SHORT) {
   944         prompt("Disable")
   915         prompt("Disable")
   945     }
   916     }
   946     field(SDIS, DBF_INLINK) {
   917     field(SDIS, DBF_INLINK) {
   947         interest(1)
       
   948         promptgroup("20 - Scan")
       
   949         prompt("Scanning Disable")
   918         prompt("Scanning Disable")
       
   919         promptgroup("20 - Scan")
       
   920         interest(1)
   950     }
   921     }
   951     field(MLOK, DBF_NOACCESS) {
   922     field(MLOK, DBF_NOACCESS) {
   952         special(SPC_NOMOD)
   923         extra("epicsMutexId        mlok")
   953         interest(4)
       
   954         prompt("Monitor lock")
   924         prompt("Monitor lock")
   955         extra("epicsMutexId        mlok")
   925         interest(4)
       
   926         special(SPC_NOMOD)
   956     }
   927     }
   957     field(MLIS, DBF_NOACCESS) {
   928     field(MLIS, DBF_NOACCESS) {
       
   929         interest(4)
       
   930         special(SPC_NOMOD)
   958         extra("ELLLIST             mlis")
   931         extra("ELLLIST             mlis")
   959         interest(4)
       
   960         special(SPC_NOMOD)
       
   961         prompt("Monitor List")
   932         prompt("Monitor List")
   962     }
   933     }
   963     field(BKLNK, DBF_NOACCESS) {
   934     field(BKLNK, DBF_NOACCESS) {
       
   935         special(SPC_NOMOD)
       
   936         interest(4)
       
   937         prompt("Backwards link tracking")
   964         extra("ELLLIST             bklnk")
   938         extra("ELLLIST             bklnk")
   965         prompt("Backwards link tracking")
       
   966         special(SPC_NOMOD)
       
   967         interest(4)
       
   968     }
   939     }
   969     field(DISP, DBF_UCHAR) {
   940     field(DISP, DBF_UCHAR) {
   970         prompt("Disable putField")
   941         prompt("Disable putField")
   971     }
   942     }
   972     field(PROC, DBF_UCHAR) {
   943     field(PROC, DBF_UCHAR) {
   973         pp(TRUE)
   944         interest(3)
   974         interest(3)
   945         pp(TRUE)
   975         prompt("Force Processing")
   946         prompt("Force Processing")
   976     }
   947     }
   977     field(STAT, DBF_MENU) {
   948     field(STAT, DBF_MENU) {
       
   949         special(SPC_NOMOD)
   978         menu(menuAlarmStat)
   950         menu(menuAlarmStat)
   979         special(SPC_NOMOD)
   951         initial("UDF")
   980         prompt("Alarm Status")
   952         prompt("Alarm Status")
   981         initial("UDF")
       
   982     }
   953     }
   983     field(SEVR, DBF_MENU) {
   954     field(SEVR, DBF_MENU) {
   984         prompt("Alarm Severity")
   955         prompt("Alarm Severity")
   985         special(SPC_NOMOD)
   956         special(SPC_NOMOD)
   986         menu(menuAlarmSevr)
   957         menu(menuAlarmSevr)
   987     }
   958     }
   988     field(NSTA, DBF_MENU) {
   959     field(NSTA, DBF_MENU) {
       
   960         special(SPC_NOMOD)
       
   961         interest(2)
   989         menu(menuAlarmStat)
   962         menu(menuAlarmStat)
   990         interest(2)
       
   991         special(SPC_NOMOD)
       
   992         prompt("New Alarm Status")
   963         prompt("New Alarm Status")
   993     }
   964     }
   994     field(NSEV, DBF_MENU) {
   965     field(NSEV, DBF_MENU) {
       
   966         special(SPC_NOMOD)
       
   967         interest(2)
   995         menu(menuAlarmSevr)
   968         menu(menuAlarmSevr)
   996         prompt("New Alarm Severity")
   969         prompt("New Alarm Severity")
   997         special(SPC_NOMOD)
       
   998         interest(2)
       
   999     }
   970     }
  1000     field(ACKS, DBF_MENU) {
   971     field(ACKS, DBF_MENU) {
  1001         menu(menuAlarmSevr)
       
  1002         special(SPC_NOMOD)
       
  1003         interest(2)
       
  1004         prompt("Alarm Ack Severity")
   972         prompt("Alarm Ack Severity")
       
   973         special(SPC_NOMOD)
       
   974         interest(2)
       
   975         menu(menuAlarmSevr)
  1005     }
   976     }
  1006     field(ACKT, DBF_MENU) {
   977     field(ACKT, DBF_MENU) {
  1007         menu(menuYesNo)
       
  1008         promptgroup("70 - Alarm")
       
  1009         interest(2)
       
  1010         special(SPC_NOMOD)
       
  1011         prompt("Alarm Ack Transient")
   978         prompt("Alarm Ack Transient")
  1012         initial("YES")
   979         initial("YES")
       
   980         promptgroup("70 - Alarm")
       
   981         special(SPC_NOMOD)
       
   982         interest(2)
       
   983         menu(menuYesNo)
  1013     }
   984     }
  1014     field(DISS, DBF_MENU) {
   985     field(DISS, DBF_MENU) {
  1015         prompt("Disable Alarm Sevrty")
   986         prompt("Disable Alarm Sevrty")
  1016         promptgroup("70 - Alarm")
   987         interest(1)
  1017         interest(1)
   988         menu(menuAlarmSevr)
  1018         menu(menuAlarmSevr)
   989         promptgroup("70 - Alarm")
  1019     }
   990     }
  1020     field(LCNT, DBF_UCHAR) {
   991     field(LCNT, DBF_UCHAR) {
       
   992         interest(2)
       
   993         special(SPC_NOMOD)
  1021         prompt("Lock Count")
   994         prompt("Lock Count")
  1022         special(SPC_NOMOD)
       
  1023         interest(2)
       
  1024     }
   995     }
  1025     field(PACT, DBF_UCHAR) {
   996     field(PACT, DBF_UCHAR) {
  1026         special(SPC_NOMOD)
       
  1027         interest(1)
       
  1028         prompt("Record active")
   997         prompt("Record active")
       
   998         interest(1)
       
   999         special(SPC_NOMOD)
  1029     }
  1000     }
  1030     field(PUTF, DBF_UCHAR) {
  1001     field(PUTF, DBF_UCHAR) {
  1031         prompt("dbPutField process")
  1002         prompt("dbPutField process")
  1032         special(SPC_NOMOD)
  1003         interest(1)
  1033         interest(1)
  1004         special(SPC_NOMOD)
  1034     }
  1005     }
  1035     field(RPRO, DBF_UCHAR) {
  1006     field(RPRO, DBF_UCHAR) {
  1036         prompt("Reprocess ")
  1007         prompt("Reprocess ")
  1037         interest(1)
  1008         interest(1)
  1038         special(SPC_NOMOD)
  1009         special(SPC_NOMOD)
  1039     }
  1010     }
  1040     field(ASP, DBF_NOACCESS) {
  1011     field(ASP, DBF_NOACCESS) {
  1041         extra("struct asgMember    *asp")
  1012         extra("struct asgMember    *asp")
  1042         interest(4)
       
  1043         special(SPC_NOMOD)
       
  1044         prompt("Access Security Pvt")
  1013         prompt("Access Security Pvt")
       
  1014         special(SPC_NOMOD)
       
  1015         interest(4)
  1045     }
  1016     }
  1046     field(PPN, DBF_NOACCESS) {
  1017     field(PPN, DBF_NOACCESS) {
  1047         extra("struct processNotify *ppn")
  1018         extra("struct processNotify *ppn")
  1048         prompt("pprocessNotify")
  1019         prompt("pprocessNotify")
  1049         interest(4)
  1020         interest(4)
  1054         special(SPC_NOMOD)
  1025         special(SPC_NOMOD)
  1055         prompt("pprocessNotifyRecord")
  1026         prompt("pprocessNotifyRecord")
  1056         extra("struct processNotifyRecord *ppnr")
  1027         extra("struct processNotifyRecord *ppnr")
  1057     }
  1028     }
  1058     field(SPVT, DBF_NOACCESS) {
  1029     field(SPVT, DBF_NOACCESS) {
       
  1030         extra("struct scan_element *spvt")
  1059         prompt("Scan Private")
  1031         prompt("Scan Private")
  1060         special(SPC_NOMOD)
  1032         interest(4)
  1061         interest(4)
  1033         special(SPC_NOMOD)
  1062         extra("struct scan_element *spvt")
       
  1063     }
  1034     }
  1064     field(RSET, DBF_NOACCESS) {
  1035     field(RSET, DBF_NOACCESS) {
  1065         interest(4)
       
  1066         special(SPC_NOMOD)
       
  1067         prompt("Address of RSET")
  1036         prompt("Address of RSET")
  1068         extra("struct typed_rset   *rset")
  1037         extra("struct typed_rset   *rset")
       
  1038         special(SPC_NOMOD)
       
  1039         interest(4)
  1069     }
  1040     }
  1070     field(DSET, DBF_NOACCESS) {
  1041     field(DSET, DBF_NOACCESS) {
  1071         extra("struct dset         *dset")
  1042         extra("struct dset         *dset")
  1072         prompt("DSET address")
  1043         prompt("DSET address")
  1073         special(SPC_NOMOD)
  1044         interest(4)
  1074         interest(4)
  1045         special(SPC_NOMOD)
  1075     }
  1046     }
  1076     field(DPVT, DBF_NOACCESS) {
  1047     field(DPVT, DBF_NOACCESS) {
       
  1048         special(SPC_NOMOD)
       
  1049         interest(4)
  1077         extra("void                *dpvt")
  1050         extra("void                *dpvt")
  1078         special(SPC_NOMOD)
       
  1079         interest(4)
       
  1080         prompt("Device Private")
  1051         prompt("Device Private")
  1081     }
  1052     }
  1082     field(RDES, DBF_NOACCESS) {
  1053     field(RDES, DBF_NOACCESS) {
       
  1054         special(SPC_NOMOD)
       
  1055         interest(4)
       
  1056         prompt("Address of dbRecordType")
  1083         extra("struct dbRecordType *rdes")
  1057         extra("struct dbRecordType *rdes")
  1084         prompt("Address of dbRecordType")
       
  1085         interest(4)
       
  1086         special(SPC_NOMOD)
       
  1087     }
  1058     }
  1088     field(LSET, DBF_NOACCESS) {
  1059     field(LSET, DBF_NOACCESS) {
       
  1060         special(SPC_NOMOD)
       
  1061         interest(4)
       
  1062         extra("struct lockRecord   *lset")
  1089         prompt("Lock Set")
  1063         prompt("Lock Set")
  1090         special(SPC_NOMOD)
       
  1091         interest(4)
       
  1092         extra("struct lockRecord   *lset")
       
  1093     }
  1064     }
  1094     field(PRIO, DBF_MENU) {
  1065     field(PRIO, DBF_MENU) {
       
  1066         interest(1)
  1095         menu(menuPriority)
  1067         menu(menuPriority)
       
  1068         special(SPC_SCAN)
       
  1069         promptgroup("20 - Scan")
  1096         prompt("Scheduling Priority")
  1070         prompt("Scheduling Priority")
  1097         promptgroup("20 - Scan")
       
  1098         interest(1)
       
  1099         special(SPC_SCAN)
       
  1100     }
  1071     }
  1101     field(TPRO, DBF_UCHAR) {
  1072     field(TPRO, DBF_UCHAR) {
  1102         prompt("Trace Processing")
  1073         prompt("Trace Processing")
  1103     }
  1074     }
  1104     field(BKPT, DBF_NOACCESS) {
  1075     field(BKPT, DBF_NOACCESS) {
  1105         extra("char                bkpt")
  1076         extra("char                bkpt")
  1106         prompt("Break Point")
  1077         prompt("Break Point")
  1107         interest(1)
  1078         special(SPC_NOMOD)
  1108         special(SPC_NOMOD)
  1079         interest(1)
  1109     }
  1080     }
  1110     field(UDF, DBF_UCHAR) {
  1081     field(UDF, DBF_UCHAR) {
  1111         initial("1")
  1082         promptgroup("10 - Common")
  1112         pp(TRUE)
  1083         pp(TRUE)
       
  1084         interest(1)
  1113         prompt("Undefined")
  1085         prompt("Undefined")
  1114         interest(1)
  1086         initial("1")
  1115         promptgroup("10 - Common")
       
  1116     }
  1087     }
  1117     field(UDFS, DBF_MENU) {
  1088     field(UDFS, DBF_MENU) {
  1118         initial("INVALID")
  1089         initial("INVALID")
  1119         menu(menuAlarmSevr)
       
  1120         prompt("Undefined Alarm Sevrty")
  1090         prompt("Undefined Alarm Sevrty")
       
  1091         menu(menuAlarmSevr)
  1121         interest(1)
  1092         interest(1)
  1122         promptgroup("70 - Alarm")
  1093         promptgroup("70 - Alarm")
  1123     }
  1094     }
  1124     field(TIME, DBF_NOACCESS) {
  1095     field(TIME, DBF_NOACCESS) {
       
  1096         interest(2)
       
  1097         special(SPC_NOMOD)
       
  1098         prompt("Time")
  1125         extra("epicsTimeStamp      time")
  1099         extra("epicsTimeStamp      time")
  1126         prompt("Time")
       
  1127         interest(2)
       
  1128         special(SPC_NOMOD)
       
  1129     }
  1100     }
  1130     field(FLNK, DBF_FWDLINK) {
  1101     field(FLNK, DBF_FWDLINK) {
  1131         prompt("Forward Process Link")
  1102         prompt("Forward Process Link")
  1132         interest(1)
  1103         promptgroup("20 - Scan")
  1133         promptgroup("20 - Scan")
  1104         interest(1)
  1134     }
  1105     }
  1135     field(VAL, DBF_LONG) {
  1106     field(VAL, DBF_NOACCESS) {
  1136         pp(TRUE)
  1107         prompt("Value")
       
  1108         extra("void *		val")
  1137         asl(ASL0)
  1109         asl(ASL0)
  1138         prompt("Used to trigger")
  1110         pp(TRUE)
  1139     }
  1111         special(SPC_DBADDR)
  1140     field(SELM, DBF_MENU) {
  1112     }
  1141         menu(sseqSELM)
  1113     field(INP, DBF_INLINK) {
  1142         prompt("Select Mechanism")
  1114         interest(1)
  1143         promptgroup("40 - Input")
  1115         promptgroup("40 - Input")
  1144         interest(1)
  1116         prompt("Input Specification")
  1145     }
  1117     }
  1146     field(SELN, DBF_USHORT) {
  1118     field(RES, DBF_SHORT) {
  1147         initial("1")
  1119         prompt("Reset")
  1148         prompt("Link Selection")
  1120         asl(ASL0)
  1149         interest(1)
  1121         interest(3)
  1150     }
  1122         special(SPC_RESET)
  1151     field(SELL, DBF_INLINK) {
  1123     }
  1152         interest(1)
  1124     field(ALG, DBF_MENU) {
  1153         promptgroup("40 - Input")
  1125         promptgroup("30 - Action")
  1154         prompt("Link Selection Loc")
  1126         menu(compressALG)
       
  1127         interest(1)
       
  1128         special(SPC_RESET)
       
  1129         prompt("Compression Algorithm")
       
  1130     }
       
  1131     field(BALG, DBF_MENU) {
       
  1132         prompt("Buffering Algorithm")
       
  1133         promptgroup("30 - Action")
       
  1134         special(SPC_RESET)
       
  1135         interest(1)
       
  1136         menu(bufferingALG)
       
  1137     }
       
  1138     field(NSAM, DBF_ULONG) {
       
  1139         prompt("Number of Values")
       
  1140         initial("1")
       
  1141         promptgroup("30 - Action")
       
  1142         special(SPC_NOMOD)
       
  1143         interest(1)
       
  1144     }
       
  1145     field(N, DBF_ULONG) {
       
  1146         initial("1")
       
  1147         prompt("N to 1 Compression")
       
  1148         special(SPC_RESET)
       
  1149         interest(1)
       
  1150         promptgroup("30 - Action")
       
  1151     }
       
  1152     field(IHIL, DBF_DOUBLE) {
       
  1153         promptgroup("30 - Action")
       
  1154         interest(1)
       
  1155         prompt("Init High Interest Lim")
       
  1156     }
       
  1157     field(ILIL, DBF_DOUBLE) {
       
  1158         prompt("Init Low Interest Lim")
       
  1159         promptgroup("30 - Action")
       
  1160         interest(1)
       
  1161     }
       
  1162     field(HOPR, DBF_DOUBLE) {
       
  1163         prompt("High Operating Range")
       
  1164         promptgroup("80 - Display")
       
  1165         prop(YES)
       
  1166         interest(1)
       
  1167     }
       
  1168     field(LOPR, DBF_DOUBLE) {
       
  1169         prompt("Low Operating Range")
       
  1170         interest(1)
       
  1171         prop(YES)
       
  1172         promptgroup("80 - Display")
  1155     }
  1173     }
  1156     field(PREC, DBF_SHORT) {
  1174     field(PREC, DBF_SHORT) {
       
  1175         prompt("Display Precision")
  1157         promptgroup("80 - Display")
  1176         promptgroup("80 - Display")
  1158         interest(1)
  1177         interest(1)
  1159         prompt("Display Precision")
  1178         prop(YES)
  1160     }
  1179     }
  1161     field(DLY1, DBF_DOUBLE) {
  1180     field(EGU, DBF_STRING) {
  1162         prompt("Delay 1")
  1181         promptgroup("80 - Display")
  1163         special(SPC_MOD)
  1182         prop(YES)
  1164         promptgroup("51 - Output (1)")
  1183         interest(1)
  1165         interest(1)
  1184         prompt("Engineering Units")
  1166     }
  1185         size(16)
  1167     field(DOL1, DBF_INLINK) {
  1186     }
  1168         prompt("Input link1")
  1187     field(OFF, DBF_ULONG) {
  1169         interest(1)
  1188         special(SPC_NOMOD)
  1170         special(SPC_MOD)
  1189         prompt("Offset")
  1171         promptgroup("51 - Output (1)")
  1190     }
  1172     }
  1191     field(NUSE, DBF_ULONG) {
  1173     field(DO1, DBF_DOUBLE) {
  1192         special(SPC_NOMOD)
  1174         prompt("Constant input 1")
  1193         prompt("Number Used")
  1175         promptgroup("51 - Output (1)")
  1194     }
  1176         special(SPC_MOD)
  1195     field(OUSE, DBF_ULONG) {
  1177         interest(1)
  1196         special(SPC_NOMOD)
  1178     }
  1197         prompt("Old Number Used")
  1179     field(LNK1, DBF_OUTLINK) {
  1198     }
  1180         special(SPC_MOD)
  1199     field(BPTR, DBF_NOACCESS) {
  1181         interest(1)
  1200         interest(4)
  1182         promptgroup("51 - Output (1)")
  1201         special(SPC_NOMOD)
  1183         prompt("Output Link 1")
  1202         extra("double		*bptr")
  1184     }
  1203         prompt("Buffer Pointer")
  1185     field(STR1, DBF_STRING) {
  1204     }
  1186         interest(4)
  1205     field(SPTR, DBF_NOACCESS) {
  1187         special(SPC_MOD)
  1206         special(SPC_NOMOD)
  1188         promptgroup("51 - Output (1)")
  1207         interest(4)
  1189         prompt("String value 1")
  1208         extra("double		*sptr")
  1190         size(40)
  1209         prompt("Summing Buffer Ptr")
  1191     }
  1210     }
  1192     field(DT1, DBF_SHORT) {
  1211     field(WPTR, DBF_NOACCESS) {
  1193         special(SPC_NOMOD)
  1212         extra("double		*wptr")
  1194         interest(4)
  1213         prompt("Working Buffer Ptr")
  1195         prompt("DOL link type")
  1214         interest(4)
  1196     }
  1215         special(SPC_NOMOD)
  1197     field(LT1, DBF_SHORT) {
  1216     }
  1198         prompt("LNK link type")
  1217     field(INPN, DBF_LONG) {
  1199         special(SPC_NOMOD)
  1218         prompt("Number of elements in Working Buffer")
  1200         interest(4)
  1219         interest(4)
  1201     }
  1220         special(SPC_NOMOD)
  1202     field(WAIT1, DBF_MENU) {
  1221     }
  1203         special(SPC_MOD)
  1222     field(CVB, DBF_DOUBLE) {
  1204         promptgroup("51 - Output (1)")
  1223         interest(3)
  1205         interest(1)
  1224         special(SPC_NOMOD)
  1206         prompt("Wait for completion?")
  1225         prompt("Compress Value Buffer")
  1207         menu(sseqWAIT)
  1226     }
  1208     }
  1227     field(INX, DBF_ULONG) {
  1209     field(WERR1, DBF_SHORT) {
  1228         prompt("Compressed Array Inx")
  1210         interest(1)
  1229         interest(3)
  1211         special(SPC_NOMOD)
  1230         special(SPC_NOMOD)
  1212     }
       
  1213     field(WTG1, DBF_SHORT) {
       
  1214         interest(1)
       
  1215         special(SPC_NOMOD)
       
  1216     }
       
  1217     field(IX1, DBF_SHORT) {
       
  1218         initial("0")
       
  1219         interest(2)
       
  1220         special(SPC_NOMOD)
       
  1221     }
       
  1222     field(DOL1V, DBF_MENU) {
       
  1223         menu(sseqLNKV)
       
  1224         prompt("DOL LINK Status")
       
  1225         special(SPC_NOMOD)
       
  1226         interest(1)
       
  1227         initial("1")
       
  1228     }
       
  1229     field(LNK1V, DBF_MENU) {
       
  1230         menu(sseqLNKV)
       
  1231         special(SPC_NOMOD)
       
  1232         interest(1)
       
  1233         prompt("LNK LINK Status")
       
  1234         initial("1")
       
  1235     }
       
  1236     field(DLY2, DBF_DOUBLE) {
       
  1237         prompt("Delay 2")
       
  1238         special(SPC_MOD)
       
  1239         promptgroup("51 - Output (1)")
       
  1240         interest(1)
       
  1241     }
       
  1242     field(DOL2, DBF_INLINK) {
       
  1243         prompt("Input link 2")
       
  1244         promptgroup("51 - Output (1)")
       
  1245         special(SPC_MOD)
       
  1246         interest(1)
       
  1247     }
       
  1248     field(DO2, DBF_DOUBLE) {
       
  1249         special(SPC_MOD)
       
  1250         interest(1)
       
  1251         promptgroup("51 - Output (1)")
       
  1252         prompt("Constant input 2")
       
  1253     }
       
  1254     field(LNK2, DBF_OUTLINK) {
       
  1255         promptgroup("51 - Output (1)")
       
  1256         special(SPC_MOD)
       
  1257         interest(1)
       
  1258         prompt("Output Link 2")
       
  1259     }
       
  1260     field(STR2, DBF_STRING) {
       
  1261         size(40)
       
  1262         prompt("String value 2")
       
  1263         interest(4)
       
  1264         special(SPC_MOD)
       
  1265         promptgroup("51 - Output (1)")
       
  1266     }
       
  1267     field(DT2, DBF_SHORT) {
       
  1268         special(SPC_NOMOD)
       
  1269         interest(4)
       
  1270         prompt("DOL link type")
       
  1271     }
       
  1272     field(LT2, DBF_SHORT) {
       
  1273         special(SPC_NOMOD)
       
  1274         interest(4)
       
  1275         prompt("LNK link type")
       
  1276     }
       
  1277     field(WAIT2, DBF_MENU) {
       
  1278         menu(sseqWAIT)
       
  1279         prompt("Wait for completion?")
       
  1280         interest(1)
       
  1281         special(SPC_MOD)
       
  1282         promptgroup("51 - Output (1)")
       
  1283     }
       
  1284     field(WERR2, DBF_SHORT) {
       
  1285         special(SPC_NOMOD)
       
  1286         interest(1)
       
  1287     }
       
  1288     field(WTG2, DBF_SHORT) {
       
  1289         special(SPC_NOMOD)
       
  1290         interest(1)
       
  1291     }
       
  1292     field(IX2, DBF_SHORT) {
       
  1293         special(SPC_NOMOD)
       
  1294         interest(2)
       
  1295         initial("1")
       
  1296     }
       
  1297     field(DOL2V, DBF_MENU) {
       
  1298         initial("1")
       
  1299         interest(1)
       
  1300         special(SPC_NOMOD)
       
  1301         prompt("DOL LINK Status")
       
  1302         menu(sseqLNKV)
       
  1303     }
       
  1304     field(LNK2V, DBF_MENU) {
       
  1305         initial("1")
       
  1306         menu(sseqLNKV)
       
  1307         special(SPC_NOMOD)
       
  1308         interest(1)
       
  1309         prompt("LNK LINK Status")
       
  1310     }
       
  1311     field(DLY3, DBF_DOUBLE) {
       
  1312         special(SPC_MOD)
       
  1313         promptgroup("51 - Output (1)")
       
  1314         interest(1)
       
  1315         prompt("Delay 3")
       
  1316     }
       
  1317     field(DOL3, DBF_INLINK) {
       
  1318         prompt("Input link 3")
       
  1319         promptgroup("51 - Output (1)")
       
  1320         special(SPC_MOD)
       
  1321         interest(1)
       
  1322     }
       
  1323     field(DO3, DBF_DOUBLE) {
       
  1324         special(SPC_MOD)
       
  1325         interest(1)
       
  1326         promptgroup("51 - Output (1)")
       
  1327         prompt("Constant input 3")
       
  1328     }
       
  1329     field(LNK3, DBF_OUTLINK) {
       
  1330         promptgroup("51 - Output (1)")
       
  1331         special(SPC_MOD)
       
  1332         interest(1)
       
  1333         prompt("Output Link 3")
       
  1334     }
       
  1335     field(STR3, DBF_STRING) {
       
  1336         size(40)
       
  1337         promptgroup("51 - Output (1)")
       
  1338         special(SPC_MOD)
       
  1339         interest(4)
       
  1340         prompt("String value 3")
       
  1341     }
       
  1342     field(DT3, DBF_SHORT) {
       
  1343         special(SPC_NOMOD)
       
  1344         interest(4)
       
  1345         prompt("DOL link type")
       
  1346     }
       
  1347     field(LT3, DBF_SHORT) {
       
  1348         prompt("LNK link type")
       
  1349         special(SPC_NOMOD)
       
  1350         interest(4)
       
  1351     }
       
  1352     field(WAIT3, DBF_MENU) {
       
  1353         menu(sseqWAIT)
       
  1354         special(SPC_MOD)
       
  1355         promptgroup("51 - Output (1)")
       
  1356         interest(1)
       
  1357         prompt("Wait for completion?")
       
  1358     }
       
  1359     field(WERR3, DBF_SHORT) {
       
  1360         interest(1)
       
  1361         special(SPC_NOMOD)
       
  1362     }
       
  1363     field(WTG3, DBF_SHORT) {
       
  1364         special(SPC_NOMOD)
       
  1365         interest(1)
       
  1366     }
       
  1367     field(IX3, DBF_SHORT) {
       
  1368         initial("2")
       
  1369         special(SPC_NOMOD)
       
  1370         interest(2)
       
  1371     }
       
  1372     field(DOL3V, DBF_MENU) {
       
  1373         menu(sseqLNKV)
       
  1374         prompt("DOL LINK Status")
       
  1375         special(SPC_NOMOD)
       
  1376         interest(1)
       
  1377         initial("1")
       
  1378     }
       
  1379     field(LNK3V, DBF_MENU) {
       
  1380         initial("1")
       
  1381         menu(sseqLNKV)
       
  1382         interest(1)
       
  1383         special(SPC_NOMOD)
       
  1384         prompt("LNK LINK Status")
       
  1385     }
       
  1386     field(DLY4, DBF_DOUBLE) {
       
  1387         interest(1)
       
  1388         special(SPC_MOD)
       
  1389         promptgroup("52 - Output (2)")
       
  1390         prompt("Delay 4")
       
  1391     }
       
  1392     field(DOL4, DBF_INLINK) {
       
  1393         interest(1)
       
  1394         special(SPC_MOD)
       
  1395         promptgroup("52 - Output (2)")
       
  1396         prompt("Input link 4")
       
  1397     }
       
  1398     field(DO4, DBF_DOUBLE) {
       
  1399         prompt("Constant input 4")
       
  1400         special(SPC_MOD)
       
  1401         interest(1)
       
  1402         promptgroup("51 - Output (1)")
       
  1403     }
       
  1404     field(LNK4, DBF_OUTLINK) {
       
  1405         prompt("Output Link 4")
       
  1406         promptgroup("52 - Output (2)")
       
  1407         special(SPC_MOD)
       
  1408         interest(1)
       
  1409     }
       
  1410     field(STR4, DBF_STRING) {
       
  1411         size(40)
       
  1412         prompt("String value 4")
       
  1413         promptgroup("51 - Output (1)")
       
  1414         special(SPC_MOD)
       
  1415         interest(4)
       
  1416     }
       
  1417     field(DT4, DBF_SHORT) {
       
  1418         special(SPC_NOMOD)
       
  1419         interest(4)
       
  1420         prompt("DOL link type")
       
  1421     }
       
  1422     field(LT4, DBF_SHORT) {
       
  1423         prompt("LNK link type")
       
  1424         special(SPC_NOMOD)
       
  1425         interest(4)
       
  1426     }
       
  1427     field(WAIT4, DBF_MENU) {
       
  1428         prompt("Wait for completion?")
       
  1429         special(SPC_MOD)
       
  1430         promptgroup("51 - Output (1)")
       
  1431         interest(1)
       
  1432         menu(sseqWAIT)
       
  1433     }
       
  1434     field(WERR4, DBF_SHORT) {
       
  1435         special(SPC_NOMOD)
       
  1436         interest(1)
       
  1437     }
       
  1438     field(WTG4, DBF_SHORT) {
       
  1439         interest(1)
       
  1440         special(SPC_NOMOD)
       
  1441     }
       
  1442     field(IX4, DBF_SHORT) {
       
  1443         initial("3")
       
  1444         special(SPC_NOMOD)
       
  1445         interest(2)
       
  1446     }
       
  1447     field(DOL4V, DBF_MENU) {
       
  1448         initial("1")
       
  1449         menu(sseqLNKV)
       
  1450         interest(1)
       
  1451         special(SPC_NOMOD)
       
  1452         prompt("DOL LINK Status")
       
  1453     }
       
  1454     field(LNK4V, DBF_MENU) {
       
  1455         initial("1")
       
  1456         interest(1)
       
  1457         special(SPC_NOMOD)
       
  1458         prompt("LNK LINK Status")
       
  1459         menu(sseqLNKV)
       
  1460     }
       
  1461     field(DLY5, DBF_DOUBLE) {
       
  1462         promptgroup("52 - Output (2)")
       
  1463         special(SPC_MOD)
       
  1464         interest(1)
       
  1465         prompt("Delay 5")
       
  1466     }
       
  1467     field(DOL5, DBF_INLINK) {
       
  1468         special(SPC_MOD)
       
  1469         promptgroup("52 - Output (2)")
       
  1470         interest(1)
       
  1471         prompt("Input link 5")
       
  1472     }
       
  1473     field(DO5, DBF_DOUBLE) {
       
  1474         promptgroup("51 - Output (1)")
       
  1475         special(SPC_MOD)
       
  1476         interest(1)
       
  1477         prompt("Constant input 5")
       
  1478     }
       
  1479     field(LNK5, DBF_OUTLINK) {
       
  1480         prompt("Output Link 5")
       
  1481         special(SPC_MOD)
       
  1482         interest(1)
       
  1483         promptgroup("52 - Output (2)")
       
  1484     }
       
  1485     field(STR5, DBF_STRING) {
       
  1486         interest(4)
       
  1487         special(SPC_MOD)
       
  1488         promptgroup("51 - Output (1)")
       
  1489         prompt("String value 5")
       
  1490         size(40)
       
  1491     }
       
  1492     field(DT5, DBF_SHORT) {
       
  1493         special(SPC_NOMOD)
       
  1494         interest(4)
       
  1495         prompt("DOL link type")
       
  1496     }
       
  1497     field(LT5, DBF_SHORT) {
       
  1498         interest(4)
       
  1499         special(SPC_NOMOD)
       
  1500         prompt("LNK link type")
       
  1501     }
       
  1502     field(WAIT5, DBF_MENU) {
       
  1503         prompt("Wait for completion?")
       
  1504         interest(1)
       
  1505         special(SPC_MOD)
       
  1506         promptgroup("51 - Output (1)")
       
  1507         menu(sseqWAIT)
       
  1508     }
       
  1509     field(WERR5, DBF_SHORT) {
       
  1510         special(SPC_NOMOD)
       
  1511         interest(1)
       
  1512     }
       
  1513     field(WTG5, DBF_SHORT) {
       
  1514         interest(1)
       
  1515         special(SPC_NOMOD)
       
  1516     }
       
  1517     field(IX5, DBF_SHORT) {
       
  1518         interest(2)
       
  1519         special(SPC_NOMOD)
       
  1520         initial("4")
       
  1521     }
       
  1522     field(DOL5V, DBF_MENU) {
       
  1523         initial("1")
       
  1524         menu(sseqLNKV)
       
  1525         prompt("DOL LINK Status")
       
  1526         interest(1)
       
  1527         special(SPC_NOMOD)
       
  1528     }
       
  1529     field(LNK5V, DBF_MENU) {
       
  1530         menu(sseqLNKV)
       
  1531         prompt("LNK LINK Status")
       
  1532         special(SPC_NOMOD)
       
  1533         interest(1)
       
  1534         initial("1")
       
  1535     }
       
  1536     field(DLY6, DBF_DOUBLE) {
       
  1537         prompt("Delay 6")
       
  1538         interest(1)
       
  1539         special(SPC_MOD)
       
  1540         promptgroup("52 - Output (2)")
       
  1541     }
       
  1542     field(DOL6, DBF_INLINK) {
       
  1543         special(SPC_MOD)
       
  1544         interest(1)
       
  1545         promptgroup("52 - Output (2)")
       
  1546         prompt("Input link 6")
       
  1547     }
       
  1548     field(DO6, DBF_DOUBLE) {
       
  1549         interest(1)
       
  1550         special(SPC_MOD)
       
  1551         promptgroup("51 - Output (1)")
       
  1552         prompt("Constant input 6")
       
  1553     }
       
  1554     field(LNK6, DBF_OUTLINK) {
       
  1555         interest(1)
       
  1556         special(SPC_MOD)
       
  1557         promptgroup("52 - Output (2)")
       
  1558         prompt("Output Link 6")
       
  1559     }
       
  1560     field(STR6, DBF_STRING) {
       
  1561         size(40)
       
  1562         special(SPC_MOD)
       
  1563         interest(4)
       
  1564         promptgroup("51 - Output (1)")
       
  1565         prompt("String value 6")
       
  1566     }
       
  1567     field(DT6, DBF_SHORT) {
       
  1568         prompt("DOL link type")
       
  1569         special(SPC_NOMOD)
       
  1570         interest(4)
       
  1571     }
       
  1572     field(LT6, DBF_SHORT) {
       
  1573         special(SPC_NOMOD)
       
  1574         interest(4)
       
  1575         prompt("LNK link type")
       
  1576     }
       
  1577     field(WAIT6, DBF_MENU) {
       
  1578         special(SPC_MOD)
       
  1579         promptgroup("51 - Output (1)")
       
  1580         interest(1)
       
  1581         prompt("Wait for completion?")
       
  1582         menu(sseqWAIT)
       
  1583     }
       
  1584     field(WERR6, DBF_SHORT) {
       
  1585         interest(1)
       
  1586         special(SPC_NOMOD)
       
  1587     }
       
  1588     field(WTG6, DBF_SHORT) {
       
  1589         special(SPC_NOMOD)
       
  1590         interest(1)
       
  1591     }
       
  1592     field(IX6, DBF_SHORT) {
       
  1593         special(SPC_NOMOD)
       
  1594         interest(2)
       
  1595         initial("5")
       
  1596     }
       
  1597     field(DOL6V, DBF_MENU) {
       
  1598         initial("1")
       
  1599         prompt("DOL LINK Status")
       
  1600         interest(1)
       
  1601         special(SPC_NOMOD)
       
  1602         menu(sseqLNKV)
       
  1603     }
       
  1604     field(LNK6V, DBF_MENU) {
       
  1605         initial("1")
       
  1606         menu(sseqLNKV)
       
  1607         special(SPC_NOMOD)
       
  1608         interest(1)
       
  1609         prompt("LNK LINK Status")
       
  1610     }
       
  1611     field(DLY7, DBF_DOUBLE) {
       
  1612         prompt("Delay 7")
       
  1613         interest(1)
       
  1614         special(SPC_MOD)
       
  1615         promptgroup("53 - Output (3)")
       
  1616     }
       
  1617     field(DOL7, DBF_INLINK) {
       
  1618         prompt("Input link 7")
       
  1619         special(SPC_MOD)
       
  1620         promptgroup("53 - Output (3)")
       
  1621         interest(1)
       
  1622     }
       
  1623     field(DO7, DBF_DOUBLE) {
       
  1624         prompt("Constant input 7")
       
  1625         special(SPC_MOD)
       
  1626         interest(1)
       
  1627         promptgroup("51 - Output (1)")
       
  1628     }
       
  1629     field(LNK7, DBF_OUTLINK) {
       
  1630         promptgroup("53 - Output (3)")
       
  1631         special(SPC_MOD)
       
  1632         interest(1)
       
  1633         prompt("Output Link 7")
       
  1634     }
       
  1635     field(STR7, DBF_STRING) {
       
  1636         prompt("String value 7")
       
  1637         special(SPC_MOD)
       
  1638         promptgroup("51 - Output (1)")
       
  1639         interest(4)
       
  1640         size(40)
       
  1641     }
       
  1642     field(DT7, DBF_SHORT) {
       
  1643         interest(4)
       
  1644         special(SPC_NOMOD)
       
  1645         prompt("DOL link type")
       
  1646     }
       
  1647     field(LT7, DBF_SHORT) {
       
  1648         interest(4)
       
  1649         special(SPC_NOMOD)
       
  1650         prompt("LNK link type")
       
  1651     }
       
  1652     field(WAIT7, DBF_MENU) {
       
  1653         prompt("Wait for completion?")
       
  1654         promptgroup("51 - Output (1)")
       
  1655         special(SPC_MOD)
       
  1656         interest(1)
       
  1657         menu(sseqWAIT)
       
  1658     }
       
  1659     field(WERR7, DBF_SHORT) {
       
  1660         special(SPC_NOMOD)
       
  1661         interest(1)
       
  1662     }
       
  1663     field(WTG7, DBF_SHORT) {
       
  1664         special(SPC_NOMOD)
       
  1665         interest(1)
       
  1666     }
       
  1667     field(IX7, DBF_SHORT) {
       
  1668         initial("6")
       
  1669         special(SPC_NOMOD)
       
  1670         interest(2)
       
  1671     }
       
  1672     field(DOL7V, DBF_MENU) {
       
  1673         menu(sseqLNKV)
       
  1674         prompt("DOL LINK Status")
       
  1675         special(SPC_NOMOD)
       
  1676         interest(1)
       
  1677         initial("1")
       
  1678     }
       
  1679     field(LNK7V, DBF_MENU) {
       
  1680         prompt("LNK LINK Status")
       
  1681         special(SPC_NOMOD)
       
  1682         interest(1)
       
  1683         menu(sseqLNKV)
       
  1684         initial("1")
       
  1685     }
       
  1686     field(DLY8, DBF_DOUBLE) {
       
  1687         prompt("Delay 8")
       
  1688         interest(1)
       
  1689         special(SPC_MOD)
       
  1690         promptgroup("53 - Output (3)")
       
  1691     }
       
  1692     field(DOL8, DBF_INLINK) {
       
  1693         special(SPC_MOD)
       
  1694         promptgroup("53 - Output (3)")
       
  1695         interest(1)
       
  1696         prompt("Input link 8")
       
  1697     }
       
  1698     field(DO8, DBF_DOUBLE) {
       
  1699         prompt("Constant input 8")
       
  1700         interest(1)
       
  1701         special(SPC_MOD)
       
  1702         promptgroup("51 - Output (1)")
       
  1703     }
       
  1704     field(LNK8, DBF_OUTLINK) {
       
  1705         prompt("Output Link 8")
       
  1706         special(SPC_MOD)
       
  1707         promptgroup("53 - Output (3)")
       
  1708         interest(1)
       
  1709     }
       
  1710     field(STR8, DBF_STRING) {
       
  1711         special(SPC_MOD)
       
  1712         promptgroup("51 - Output (1)")
       
  1713         interest(4)
       
  1714         prompt("String value 8")
       
  1715         size(40)
       
  1716     }
       
  1717     field(DT8, DBF_SHORT) {
       
  1718         prompt("DOL link type")
       
  1719         interest(4)
       
  1720         special(SPC_NOMOD)
       
  1721     }
       
  1722     field(LT8, DBF_SHORT) {
       
  1723         special(SPC_NOMOD)
       
  1724         interest(4)
       
  1725         prompt("LNK link type")
       
  1726     }
       
  1727     field(WAIT8, DBF_MENU) {
       
  1728         menu(sseqWAIT)
       
  1729         promptgroup("51 - Output (1)")
       
  1730         special(SPC_MOD)
       
  1731         interest(1)
       
  1732         prompt("Wait for completion?")
       
  1733     }
       
  1734     field(WERR8, DBF_SHORT) {
       
  1735         interest(1)
       
  1736         special(SPC_NOMOD)
       
  1737     }
       
  1738     field(WTG8, DBF_SHORT) {
       
  1739         special(SPC_NOMOD)
       
  1740         interest(1)
       
  1741     }
       
  1742     field(IX8, DBF_SHORT) {
       
  1743         interest(2)
       
  1744         special(SPC_NOMOD)
       
  1745         initial("7")
       
  1746     }
       
  1747     field(DOL8V, DBF_MENU) {
       
  1748         special(SPC_NOMOD)
       
  1749         interest(1)
       
  1750         prompt("DOL LINK Status")
       
  1751         menu(sseqLNKV)
       
  1752         initial("1")
       
  1753     }
       
  1754     field(LNK8V, DBF_MENU) {
       
  1755         initial("1")
       
  1756         special(SPC_NOMOD)
       
  1757         interest(1)
       
  1758         prompt("LNK LINK Status")
       
  1759         menu(sseqLNKV)
       
  1760     }
       
  1761     field(DLY9, DBF_DOUBLE) {
       
  1762         prompt("Delay 9")
       
  1763         special(SPC_MOD)
       
  1764         interest(1)
       
  1765         promptgroup("53 - Output (3)")
       
  1766     }
       
  1767     field(DOL9, DBF_INLINK) {
       
  1768         special(SPC_MOD)
       
  1769         promptgroup("53 - Output (3)")
       
  1770         interest(1)
       
  1771         prompt("Input link 9")
       
  1772     }
       
  1773     field(DO9, DBF_DOUBLE) {
       
  1774         prompt("Constant input 9")
       
  1775         interest(1)
       
  1776         special(SPC_MOD)
       
  1777         promptgroup("51 - Output (1)")
       
  1778     }
       
  1779     field(LNK9, DBF_OUTLINK) {
       
  1780         promptgroup("53 - Output (3)")
       
  1781         special(SPC_MOD)
       
  1782         interest(1)
       
  1783         prompt("Output Link 9")
       
  1784     }
       
  1785     field(STR9, DBF_STRING) {
       
  1786         promptgroup("51 - Output (1)")
       
  1787         special(SPC_MOD)
       
  1788         interest(4)
       
  1789         prompt("String value 9")
       
  1790         size(40)
       
  1791     }
       
  1792     field(DT9, DBF_SHORT) {
       
  1793         prompt("DOL link type")
       
  1794         special(SPC_NOMOD)
       
  1795         interest(4)
       
  1796     }
       
  1797     field(LT9, DBF_SHORT) {
       
  1798         interest(4)
       
  1799         special(SPC_NOMOD)
       
  1800         prompt("LNK link type")
       
  1801     }
       
  1802     field(WAIT9, DBF_MENU) {
       
  1803         menu(sseqWAIT)
       
  1804         prompt("Wait for completion?")
       
  1805         interest(1)
       
  1806         special(SPC_MOD)
       
  1807         promptgroup("51 - Output (1)")
       
  1808     }
       
  1809     field(WERR9, DBF_SHORT) {
       
  1810         special(SPC_NOMOD)
       
  1811         interest(1)
       
  1812     }
       
  1813     field(WTG9, DBF_SHORT) {
       
  1814         interest(1)
       
  1815         special(SPC_NOMOD)
       
  1816     }
       
  1817     field(IX9, DBF_SHORT) {
       
  1818         initial("8")
       
  1819         special(SPC_NOMOD)
       
  1820         interest(2)
       
  1821     }
       
  1822     field(DOL9V, DBF_MENU) {
       
  1823         special(SPC_NOMOD)
       
  1824         interest(1)
       
  1825         prompt("DOL LINK Status")
       
  1826         menu(sseqLNKV)
       
  1827         initial("1")
       
  1828     }
       
  1829     field(LNK9V, DBF_MENU) {
       
  1830         menu(sseqLNKV)
       
  1831         interest(1)
       
  1832         special(SPC_NOMOD)
       
  1833         prompt("LNK LINK Status")
       
  1834         initial("1")
       
  1835     }
       
  1836     field(DLYA, DBF_DOUBLE) {
       
  1837         prompt("Delay 10")
       
  1838         special(SPC_MOD)
       
  1839         interest(1)
       
  1840         promptgroup("53 - Output (3)")
       
  1841     }
       
  1842     field(DOLA, DBF_INLINK) {
       
  1843         prompt("Input link 10")
       
  1844         promptgroup("53 - Output (3)")
       
  1845         special(SPC_MOD)
       
  1846         interest(1)
       
  1847     }
       
  1848     field(DOA, DBF_DOUBLE) {
       
  1849         prompt("Constant input 10")
       
  1850         special(SPC_MOD)
       
  1851         interest(1)
       
  1852         promptgroup("51 - Output (1)")
       
  1853     }
       
  1854     field(LNKA, DBF_OUTLINK) {
       
  1855         prompt("Output Link 10")
       
  1856         special(SPC_MOD)
       
  1857         promptgroup("53 - Output (3)")
       
  1858         interest(1)
       
  1859     }
       
  1860     field(STRA, DBF_STRING) {
       
  1861         interest(4)
       
  1862         special(SPC_MOD)
       
  1863         promptgroup("51 - Output (1)")
       
  1864         prompt("String value A")
       
  1865         size(40)
       
  1866     }
       
  1867     field(DTA, DBF_SHORT) {
       
  1868         interest(4)
       
  1869         special(SPC_NOMOD)
       
  1870         prompt("DOL link type")
       
  1871     }
       
  1872     field(LTA, DBF_SHORT) {
       
  1873         interest(4)
       
  1874         special(SPC_NOMOD)
       
  1875         prompt("LNK link type")
       
  1876     }
       
  1877     field(WAITA, DBF_MENU) {
       
  1878         menu(sseqWAIT)
       
  1879         prompt("Wait for completion?")
       
  1880         interest(1)
       
  1881         special(SPC_MOD)
       
  1882         promptgroup("51 - Output (1)")
       
  1883     }
       
  1884     field(WERRA, DBF_SHORT) {
       
  1885         special(SPC_NOMOD)
       
  1886         interest(1)
       
  1887     }
       
  1888     field(WTGA, DBF_SHORT) {
       
  1889         interest(1)
       
  1890     }
       
  1891     field(IXA, DBF_SHORT) {
       
  1892         interest(2)
       
  1893         initial("9")
       
  1894     }
       
  1895     field(DOLAV, DBF_MENU) {
       
  1896         menu(sseqLNKV)
       
  1897         prompt("DOL LINK Status")
       
  1898         interest(1)
       
  1899         special(SPC_NOMOD)
       
  1900         initial("1")
       
  1901     }
       
  1902     field(LNKAV, DBF_MENU) {
       
  1903         prompt("LNK LINK Status")
       
  1904         interest(1)
       
  1905         special(SPC_NOMOD)
       
  1906         menu(sseqLNKV)
       
  1907         initial("1")
       
  1908     }
       
  1909     field(ABORT, DBF_SHORT) {
       
  1910         interest(1)
       
  1911         special(SPC_MOD)
       
  1912         prompt("Abort sequence")
       
  1913     }
       
  1914     field(ABORTING, DBF_SHORT) {
       
  1915         special(SPC_MOD)
       
  1916         interest(1)
       
  1917         prompt("Aborting")
       
  1918     }
       
  1919     field(BUSY, DBF_SHORT) {
       
  1920         prompt("Sequence active")
       
  1921         special(SPC_NOMOD)
       
  1922         interest(1)
       
  1923     }
  1231     }
  1924 }
  1232 }
  1925 recordtype(sel) {
  1233 recordtype(sub) {
  1926     %#include "epicsTypes.h"
  1234     %#include "epicsTypes.h"
  1927     %#include "link.h"
  1235     %#include "link.h"
  1928     %#include "epicsMutex.h"
  1236     %#include "epicsMutex.h"
  1929     %#include "ellLib.h"
  1237     %#include "ellLib.h"
  1930     %#include "epicsTime.h"
  1238     %#include "epicsTime.h"
       
  1239     %struct subRecord;
       
  1240     %typedef long (*SUBFUNCPTR)(struct subRecord *);
  1931     field(NAME, DBF_STRING) {
  1241     field(NAME, DBF_STRING) {
       
  1242         special(SPC_NOMOD)
       
  1243         size(61)
  1932         prompt("Record Name")
  1244         prompt("Record Name")
  1933         special(SPC_NOMOD)
       
  1934         size(61)
       
  1935     }
  1245     }
  1936     field(DESC, DBF_STRING) {
  1246     field(DESC, DBF_STRING) {
  1937         promptgroup("10 - Common")
       
  1938         prompt("Descriptor")
  1247         prompt("Descriptor")
  1939         size(41)
  1248         size(41)
       
  1249         promptgroup("10 - Common")
  1940     }
  1250     }
  1941     field(ASG, DBF_STRING) {
  1251     field(ASG, DBF_STRING) {
       
  1252         special(SPC_AS)
       
  1253         promptgroup("10 - Common")
  1942         size(29)
  1254         size(29)
  1943         prompt("Access Security Group")
  1255         prompt("Access Security Group")
  1944         promptgroup("10 - Common")
       
  1945         special(SPC_AS)
       
  1946     }
  1256     }
  1947     field(SCAN, DBF_MENU) {
  1257     field(SCAN, DBF_MENU) {
  1948         interest(1)
  1258         promptgroup("20 - Scan")
       
  1259         interest(1)
       
  1260         menu(menuScan)
  1949         special(SPC_SCAN)
  1261         special(SPC_SCAN)
  1950         promptgroup("20 - Scan")
       
  1951         prompt("Scan Mechanism")
  1262         prompt("Scan Mechanism")
  1952         menu(menuScan)
       
  1953     }
  1263     }
  1954     field(PINI, DBF_MENU) {
  1264     field(PINI, DBF_MENU) {
       
  1265         interest(1)
  1955         menu(menuPini)
  1266         menu(menuPini)
       
  1267         promptgroup("20 - Scan")
  1956         prompt("Process at iocInit")
  1268         prompt("Process at iocInit")
  1957         interest(1)
       
  1958         promptgroup("20 - Scan")
       
  1959     }
  1269     }
  1960     field(PHAS, DBF_SHORT) {
  1270     field(PHAS, DBF_SHORT) {
       
  1271         promptgroup("20 - Scan")
       
  1272         interest(1)
       
  1273         special(SPC_SCAN)
  1961         prompt("Scan Phase")
  1274         prompt("Scan Phase")
       
  1275     }
       
  1276     field(EVNT, DBF_STRING) {
       
  1277         promptgroup("20 - Scan")
  1962         interest(1)
  1278         interest(1)
  1963         special(SPC_SCAN)
  1279         special(SPC_SCAN)
  1964         promptgroup("20 - Scan")
  1280         prompt("Event Name")
  1965     }
       
  1966     field(EVNT, DBF_STRING) {
       
  1967         size(40)
  1281         size(40)
  1968         special(SPC_SCAN)
       
  1969         interest(1)
       
  1970         promptgroup("20 - Scan")
       
  1971         prompt("Event Name")
       
  1972     }
  1282     }
  1973     field(TSE, DBF_SHORT) {
  1283     field(TSE, DBF_SHORT) {
  1974         prompt("Time Stamp Event")
  1284         prompt("Time Stamp Event")
  1975         interest(1)
  1285         interest(1)
  1976         promptgroup("20 - Scan")
  1286         promptgroup("20 - Scan")
  1979         promptgroup("20 - Scan")
  1289         promptgroup("20 - Scan")
  1980         interest(1)
  1290         interest(1)
  1981         prompt("Time Stamp Link")
  1291         prompt("Time Stamp Link")
  1982     }
  1292     }
  1983     field(DTYP, DBF_DEVICE) {
  1293     field(DTYP, DBF_DEVICE) {
  1984         interest(1)
       
  1985         promptgroup("10 - Common")
       
  1986         prompt("Device Type")
  1294         prompt("Device Type")
       
  1295         interest(1)
       
  1296         promptgroup("10 - Common")
  1987     }
  1297     }
  1988     field(DISV, DBF_SHORT) {
  1298     field(DISV, DBF_SHORT) {
  1989         initial("1")
  1299         promptgroup("20 - Scan")
  1990         promptgroup("20 - Scan")
  1300         initial("1")
  1991         prompt("Disable Value")
  1301         prompt("Disable Value")
  1992     }
  1302     }
  1993     field(DISA, DBF_SHORT) {
  1303     field(DISA, DBF_SHORT) {
  1994         prompt("Disable")
  1304         prompt("Disable")
  1995     }
  1305     }
  1996     field(SDIS, DBF_INLINK) {
  1306     field(SDIS, DBF_INLINK) {
  1997         interest(1)
       
  1998         promptgroup("20 - Scan")
       
  1999         prompt("Scanning Disable")
  1307         prompt("Scanning Disable")
       
  1308         promptgroup("20 - Scan")
       
  1309         interest(1)
  2000     }
  1310     }
  2001     field(MLOK, DBF_NOACCESS) {
  1311     field(MLOK, DBF_NOACCESS) {
       
  1312         prompt("Monitor lock")
  2002         extra("epicsMutexId        mlok")
  1313         extra("epicsMutexId        mlok")
  2003         interest(4)
  1314         interest(4)
  2004         special(SPC_NOMOD)
  1315         special(SPC_NOMOD)
  2005         prompt("Monitor lock")
       
  2006     }
  1316     }
  2007     field(MLIS, DBF_NOACCESS) {
  1317     field(MLIS, DBF_NOACCESS) {
       
  1318         extra("ELLLIST             mlis")
  2008         prompt("Monitor List")
  1319         prompt("Monitor List")
  2009         special(SPC_NOMOD)
  1320         interest(4)
  2010         interest(4)
  1321         special(SPC_NOMOD)
  2011         extra("ELLLIST             mlis")
       
  2012     }
  1322     }
  2013     field(BKLNK, DBF_NOACCESS) {
  1323     field(BKLNK, DBF_NOACCESS) {
  2014         prompt("Backwards link tracking")
  1324         prompt("Backwards link tracking")
  2015         interest(4)
       
  2016         special(SPC_NOMOD)
       
  2017         extra("ELLLIST             bklnk")
  1325         extra("ELLLIST             bklnk")
       
  1326         special(SPC_NOMOD)
       
  1327         interest(4)
  2018     }
  1328     }
  2019     field(DISP, DBF_UCHAR) {
  1329     field(DISP, DBF_UCHAR) {
  2020         prompt("Disable putField")
  1330         prompt("Disable putField")
  2021     }
  1331     }
  2022     field(PROC, DBF_UCHAR) {
  1332     field(PROC, DBF_UCHAR) {
  2023         interest(3)
  1333         interest(3)
       
  1334         pp(TRUE)
  2024         prompt("Force Processing")
  1335         prompt("Force Processing")
  2025         pp(TRUE)
       
  2026     }
  1336     }
  2027     field(STAT, DBF_MENU) {
  1337     field(STAT, DBF_MENU) {
  2028         initial("UDF")
  1338         special(SPC_NOMOD)
  2029         menu(menuAlarmStat)
  1339         menu(menuAlarmStat)
  2030         prompt("Alarm Status")
  1340         prompt("Alarm Status")
  2031         special(SPC_NOMOD)
  1341         initial("UDF")
  2032     }
  1342     }
  2033     field(SEVR, DBF_MENU) {
  1343     field(SEVR, DBF_MENU) {
  2034         special(SPC_NOMOD)
  1344         special(SPC_NOMOD)
       
  1345         menu(menuAlarmSevr)
  2035         prompt("Alarm Severity")
  1346         prompt("Alarm Severity")
  2036         menu(menuAlarmSevr)
       
  2037     }
  1347     }
  2038     field(NSTA, DBF_MENU) {
  1348     field(NSTA, DBF_MENU) {
       
  1349         interest(2)
       
  1350         menu(menuAlarmStat)
       
  1351         special(SPC_NOMOD)
  2039         prompt("New Alarm Status")
  1352         prompt("New Alarm Status")
  2040         special(SPC_NOMOD)
       
  2041         interest(2)
       
  2042         menu(menuAlarmStat)
       
  2043     }
  1353     }
  2044     field(NSEV, DBF_MENU) {
  1354     field(NSEV, DBF_MENU) {
  2045         special(SPC_NOMOD)
  1355         interest(2)
  2046         interest(2)
  1356         menu(menuAlarmSevr)
       
  1357         special(SPC_NOMOD)
  2047         prompt("New Alarm Severity")
  1358         prompt("New Alarm Severity")
  2048         menu(menuAlarmSevr)
       
  2049     }
  1359     }
  2050     field(ACKS, DBF_MENU) {
  1360     field(ACKS, DBF_MENU) {
  2051         menu(menuAlarmSevr)
       
  2052         prompt("Alarm Ack Severity")
  1361         prompt("Alarm Ack Severity")
  2053         interest(2)
  1362         special(SPC_NOMOD)
  2054         special(SPC_NOMOD)
  1363         interest(2)
       
  1364         menu(menuAlarmSevr)
  2055     }
  1365     }
  2056     field(ACKT, DBF_MENU) {
  1366     field(ACKT, DBF_MENU) {
       
  1367         interest(2)
  2057         menu(menuYesNo)
  1368         menu(menuYesNo)
  2058         promptgroup("70 - Alarm")
  1369         special(SPC_NOMOD)
  2059         interest(2)
  1370         promptgroup("70 - Alarm")
  2060         special(SPC_NOMOD)
  1371         initial("YES")
  2061         prompt("Alarm Ack Transient")
  1372         prompt("Alarm Ack Transient")
  2062         initial("YES")
       
  2063     }
  1373     }
  2064     field(DISS, DBF_MENU) {
  1374     field(DISS, DBF_MENU) {
  2065         menu(menuAlarmSevr)
  1375         menu(menuAlarmSevr)
  2066         promptgroup("70 - Alarm")
  1376         interest(1)
  2067         interest(1)
  1377         promptgroup("70 - Alarm")
  2068         prompt("Disable Alarm Sevrty")
  1378         prompt("Disable Alarm Sevrty")
  2069     }
  1379     }
  2070     field(LCNT, DBF_UCHAR) {
  1380     field(LCNT, DBF_UCHAR) {
  2071         special(SPC_NOMOD)
       
  2072         interest(2)
       
  2073         prompt("Lock Count")
  1381         prompt("Lock Count")
       
  1382         special(SPC_NOMOD)
       
  1383         interest(2)
  2074     }
  1384     }
  2075     field(PACT, DBF_UCHAR) {
  1385     field(PACT, DBF_UCHAR) {
  2076         prompt("Record active")
  1386         prompt("Record active")
  2077         special(SPC_NOMOD)
  1387         interest(1)
  2078         interest(1)
  1388         special(SPC_NOMOD)
  2079     }
  1389     }
  2080     field(PUTF, DBF_UCHAR) {
  1390     field(PUTF, DBF_UCHAR) {
  2081         special(SPC_NOMOD)
       
  2082         interest(1)
       
  2083         prompt("dbPutField process")
  1391         prompt("dbPutField process")
       
  1392         interest(1)
       
  1393         special(SPC_NOMOD)
  2084     }
  1394     }
  2085     field(RPRO, DBF_UCHAR) {
  1395     field(RPRO, DBF_UCHAR) {
  2086         prompt("Reprocess ")
  1396         prompt("Reprocess ")
  2087         interest(1)
  1397         interest(1)
  2088         special(SPC_NOMOD)
  1398         special(SPC_NOMOD)
  2089     }
  1399     }
  2090     field(ASP, DBF_NOACCESS) {
  1400     field(ASP, DBF_NOACCESS) {
       
  1401         special(SPC_NOMOD)
       
  1402         interest(4)
  2091         prompt("Access Security Pvt")
  1403         prompt("Access Security Pvt")
  2092         special(SPC_NOMOD)
       
  2093         interest(4)
       
  2094         extra("struct asgMember    *asp")
  1404         extra("struct asgMember    *asp")
  2095     }
  1405     }
  2096     field(PPN, DBF_NOACCESS) {
  1406     field(PPN, DBF_NOACCESS) {
       
  1407         extra("struct processNotify *ppn")
  2097         prompt("pprocessNotify")
  1408         prompt("pprocessNotify")
  2098         interest(4)
  1409         special(SPC_NOMOD)
  2099         special(SPC_NOMOD)
  1410         interest(4)
  2100         extra("struct processNotify *ppn")
       
  2101     }
  1411     }
  2102     field(PPNR, DBF_NOACCESS) {
  1412     field(PPNR, DBF_NOACCESS) {
  2103         extra("struct processNotifyRecord *ppnr")
  1413         extra("struct processNotifyRecord *ppnr")
  2104         special(SPC_NOMOD)
       
  2105         interest(4)
       
  2106         prompt("pprocessNotifyRecord")
  1414         prompt("pprocessNotifyRecord")
       
  1415         special(SPC_NOMOD)
       
  1416         interest(4)
  2107     }
  1417     }
  2108     field(SPVT, DBF_NOACCESS) {
  1418     field(SPVT, DBF_NOACCESS) {
  2109         interest(4)
       
  2110         special(SPC_NOMOD)
       
  2111         prompt("Scan Private")
  1419         prompt("Scan Private")
  2112         extra("struct scan_element *spvt")
  1420         extra("struct scan_element *spvt")
       
  1421         special(SPC_NOMOD)
       
  1422         interest(4)
  2113     }
  1423     }
  2114     field(RSET, DBF_NOACCESS) {
  1424     field(RSET, DBF_NOACCESS) {
  2115         extra("struct typed_rset   *rset")
  1425         extra("struct typed_rset   *rset")
  2116         prompt("Address of RSET")
  1426         prompt("Address of RSET")
  2117         interest(4)
  1427         interest(4)
  2118         special(SPC_NOMOD)
  1428         special(SPC_NOMOD)
  2119     }
  1429     }
  2120     field(DSET, DBF_NOACCESS) {
  1430     field(DSET, DBF_NOACCESS) {
  2121         extra("struct dset         *dset")
  1431         extra("struct dset         *dset")
  2122         special(SPC_NOMOD)
       
  2123         interest(4)
       
  2124         prompt("DSET address")
  1432         prompt("DSET address")
       
  1433         special(SPC_NOMOD)
       
  1434         interest(4)
  2125     }
  1435     }
  2126     field(DPVT, DBF_NOACCESS) {
  1436     field(DPVT, DBF_NOACCESS) {
       
  1437         prompt("Device Private")
  2127         extra("void                *dpvt")
  1438         extra("void                *dpvt")
  2128         prompt("Device Private")
       
  2129         special(SPC_NOMOD)
  1439         special(SPC_NOMOD)
  2130         interest(4)
  1440         interest(4)
  2131     }
  1441     }
  2132     field(RDES, DBF_NOACCESS) {
  1442     field(RDES, DBF_NOACCESS) {
       
  1443         special(SPC_NOMOD)
       
  1444         interest(4)
  2133         extra("struct dbRecordType *rdes")
  1445         extra("struct dbRecordType *rdes")
  2134         special(SPC_NOMOD)
       
  2135         interest(4)
       
  2136         prompt("Address of dbRecordType")
  1446         prompt("Address of dbRecordType")
  2137     }
  1447     }
  2138     field(LSET, DBF_NOACCESS) {
  1448     field(LSET, DBF_NOACCESS) {
       
  1449         prompt("Lock Set")
  2139         extra("struct lockRecord   *lset")
  1450         extra("struct lockRecord   *lset")
  2140         interest(4)
  1451         interest(4)
  2141         special(SPC_NOMOD)
  1452         special(SPC_NOMOD)
  2142         prompt("Lock Set")
       
  2143     }
  1453     }
  2144     field(PRIO, DBF_MENU) {
  1454     field(PRIO, DBF_MENU) {
       
  1455         interest(1)
  2145         menu(menuPriority)
  1456         menu(menuPriority)
  2146         interest(1)
       
  2147         special(SPC_SCAN)
  1457         special(SPC_SCAN)
  2148         promptgroup("20 - Scan")
  1458         promptgroup("20 - Scan")
  2149         prompt("Scheduling Priority")
  1459         prompt("Scheduling Priority")
  2150     }
  1460     }
  2151     field(TPRO, DBF_UCHAR) {
  1461     field(TPRO, DBF_UCHAR) {
  2152         prompt("Trace Processing")
  1462         prompt("Trace Processing")
  2153     }
  1463     }
  2154     field(BKPT, DBF_NOACCESS) {
  1464     field(BKPT, DBF_NOACCESS) {
       
  1465         special(SPC_NOMOD)
       
  1466         interest(1)
       
  1467         prompt("Break Point")
  2155         extra("char                bkpt")
  1468         extra("char                bkpt")
  2156         special(SPC_NOMOD)
       
  2157         interest(1)
       
  2158         prompt("Break Point")
       
  2159     }
  1469     }
  2160     field(UDF, DBF_UCHAR) {
  1470     field(UDF, DBF_UCHAR) {
       
  1471         pp(TRUE)
       
  1472         promptgroup("10 - Common")
       
  1473         interest(1)
  2161         prompt("Undefined")
  1474         prompt("Undefined")
  2162         interest(1)
       
  2163         promptgroup("10 - Common")
       
  2164         pp(TRUE)
       
  2165         initial("1")
  1475         initial("1")
  2166     }
  1476     }
  2167     field(UDFS, DBF_MENU) {
  1477     field(UDFS, DBF_MENU) {
  2168         prompt("Undefined Alarm Sevrty")
  1478         prompt("Undefined Alarm Sevrty")
  2169         promptgroup("70 - Alarm")
       
  2170         interest(1)
       
  2171         menu(menuAlarmSevr)
       
  2172         initial("INVALID")
  1479         initial("INVALID")
       
  1480         promptgroup("70 - Alarm")
       
  1481         interest(1)
       
  1482         menu(menuAlarmSevr)
  2173     }
  1483     }
  2174     field(TIME, DBF_NOACCESS) {
  1484     field(TIME, DBF_NOACCESS) {
  2175         prompt("Time")
  1485         prompt("Time")
  2176         interest(2)
       
  2177         special(SPC_NOMOD)
       
  2178         extra("epicsTimeStamp      time")
  1486         extra("epicsTimeStamp      time")
       
  1487         special(SPC_NOMOD)
       
  1488         interest(2)
  2179     }
  1489     }
  2180     field(FLNK, DBF_FWDLINK) {
  1490     field(FLNK, DBF_FWDLINK) {
       
  1491         interest(1)
       
  1492         promptgroup("20 - Scan")
  2181         prompt("Forward Process Link")
  1493         prompt("Forward Process Link")
  2182         interest(1)
       
  2183         promptgroup("20 - Scan")
       
  2184     }
  1494     }
  2185     field(VAL, DBF_DOUBLE) {
  1495     field(VAL, DBF_DOUBLE) {
       
  1496         prompt("Result")
  2186         asl(ASL0)
  1497         asl(ASL0)
  2187         prompt("Result")
  1498         pp(TRUE)
  2188         promptgroup("40 - Input")
  1499     }
  2189         special(SPC_NOMOD)
  1500     field(INAM, DBF_STRING) {
  2190     }
  1501         special(SPC_NOMOD)
  2191     field(SELM, DBF_MENU) {
  1502         interest(1)
  2192         promptgroup("30 - Action")
  1503         promptgroup("30 - Action")
  2193         prompt("Select Mechanism")
  1504         size(40)
  2194         menu(selSELM)
  1505         prompt("Init Routine Name")
  2195     }
  1506     }
  2196     field(SELN, DBF_USHORT) {
  1507     field(SNAM, DBF_STRING) {
  2197         prompt("Index value")
  1508         size(40)
  2198     }
  1509         prompt("Subroutine Name")
  2199     field(PREC, DBF_SHORT) {
  1510         special(SPC_MOD)
  2200         promptgroup("80 - Display")
  1511         interest(1)
  2201         interest(1)
       
  2202         prompt("Display Precision")
       
  2203     }
       
  2204     field(NVL, DBF_INLINK) {
       
  2205         promptgroup("30 - Action")
  1512         promptgroup("30 - Action")
  2206         interest(1)
  1513     }
  2207         prompt("Index Value Location")
  1514     field(SADR, DBF_NOACCESS) {
       
  1515         extra("SUBFUNCPTR sadr")
       
  1516         prompt("Subroutine Address")
       
  1517         interest(4)
       
  1518         special(SPC_NOMOD)
  2208     }
  1519     }
  2209     field(INPA, DBF_INLINK) {
  1520     field(INPA, DBF_INLINK) {
       
  1521         prompt("Input A")
  2210         interest(1)
  1522         interest(1)
  2211         promptgroup("41 - Input A-F")
  1523         promptgroup("41 - Input A-F")
  2212         prompt("Input A")
       
  2213     }
  1524     }
  2214     field(INPB, DBF_INLINK) {
  1525     field(INPB, DBF_INLINK) {
       
  1526         promptgroup("41 - Input A-F")
       
  1527         interest(1)
  2215         prompt("Input B")
  1528         prompt("Input B")
  2216         interest(1)
       
  2217         promptgroup("41 - Input A-F")
       
  2218     }
  1529     }
  2219     field(INPC, DBF_INLINK) {
  1530     field(INPC, DBF_INLINK) {
  2220         prompt("Input C")
  1531         prompt("Input C")
       
  1532         interest(1)
  2221         promptgroup("41 - Input A-F")
  1533         promptgroup("41 - Input A-F")
  2222         interest(1)
       
  2223     }
  1534     }
  2224     field(INPD, DBF_INLINK) {
  1535     field(INPD, DBF_INLINK) {
       
  1536         promptgroup("41 - Input A-F")
       
  1537         interest(1)
  2225         prompt("Input D")
  1538         prompt("Input D")
  2226         interest(1)
  1539     }
       
  1540     field(INPE, DBF_INLINK) {
       
  1541         prompt("Input E")
  2227         promptgroup("41 - Input A-F")
  1542         promptgroup("41 - Input A-F")
  2228     }
  1543         interest(1)
  2229     field(INPE, DBF_INLINK) {
  1544     }
       
  1545     field(INPF, DBF_INLINK) {
       
  1546         interest(1)
  2230         promptgroup("41 - Input A-F")
  1547         promptgroup("41 - Input A-F")
  2231         interest(1)
       
  2232         prompt("Input E")
       
  2233     }
       
  2234     field(INPF, DBF_INLINK) {
       
  2235         promptgroup("41 - Input A-F")
       
  2236         interest(1)
       
  2237         prompt("Input F")
  1548         prompt("Input F")
  2238     }
  1549     }
  2239     field(INPG, DBF_INLINK) {
  1550     field(INPG, DBF_INLINK) {
  2240         promptgroup("42 - Input G-L")
  1551         promptgroup("42 - Input G-L")
  2241         interest(1)
  1552         interest(1)
  2242         prompt("Input G")
  1553         prompt("Input G")
  2243     }
  1554     }
  2244     field(INPH, DBF_INLINK) {
  1555     field(INPH, DBF_INLINK) {
       
  1556         prompt("Input H")
       
  1557         interest(1)
  2245         promptgroup("42 - Input G-L")
  1558         promptgroup("42 - Input G-L")
  2246         interest(1)
       
  2247         prompt("Input H")
       
  2248     }
  1559     }
  2249     field(INPI, DBF_INLINK) {
  1560     field(INPI, DBF_INLINK) {
  2250         prompt("Input I")
  1561         prompt("Input I")
       
  1562         interest(1)
  2251         promptgroup("42 - Input G-L")
  1563         promptgroup("42 - Input G-L")
  2252         interest(1)
       
  2253     }
  1564     }
  2254     field(INPJ, DBF_INLINK) {
  1565     field(INPJ, DBF_INLINK) {
       
  1566         interest(1)
       
  1567         promptgroup("42 - Input G-L")
  2255         prompt("Input J")
  1568         prompt("Input J")
       
  1569     }
       
  1570     field(INPK, DBF_INLINK) {
  2256         interest(1)
  1571         interest(1)
  2257         promptgroup("42 - Input G-L")
  1572         promptgroup("42 - Input G-L")
  2258     }
       
  2259     field(INPK, DBF_INLINK) {
       
  2260         prompt("Input K")
  1573         prompt("Input K")
       
  1574     }
       
  1575     field(INPL, DBF_INLINK) {
       
  1576         prompt("Input L")
  2261         interest(1)
  1577         interest(1)
  2262         promptgroup("42 - Input G-L")
  1578         promptgroup("42 - Input G-L")
  2263     }
  1579     }
  2264     field(INPL, DBF_INLINK) {
       
  2265         interest(1)
       
  2266         promptgroup("42 - Input G-L")
       
  2267         prompt("Input L")
       
  2268     }
       
  2269     field(EGU, DBF_STRING) {
  1580     field(EGU, DBF_STRING) {
       
  1581         prompt("Engineering Units")
  2270         size(16)
  1582         size(16)
  2271         promptgroup("80 - Display")
  1583         promptgroup("80 - Display")
  2272         prop(YES)
  1584         prop(YES)
  2273         interest(1)
  1585         interest(1)
  2274         prompt("Engineering Units")
       
  2275     }
  1586     }
  2276     field(HOPR, DBF_DOUBLE) {
  1587     field(HOPR, DBF_DOUBLE) {
  2277         prompt("High Operating Rng")
       
  2278         prop(YES)
  1588         prop(YES)
       
  1589         interest(1)
  2279         promptgroup("80 - Display")
  1590         promptgroup("80 - Display")
  2280         interest(1)
  1591         prompt("High Operating Range")
  2281     }
  1592     }
  2282     field(LOPR, DBF_DOUBLE) {
  1593     field(LOPR, DBF_DOUBLE) {
       
  1594         prompt("Low Operating Range")
  2283         prop(YES)
  1595         prop(YES)
  2284         interest(1)
  1596         interest(1)
  2285         promptgroup("80 - Display")
  1597         promptgroup("80 - Display")
  2286         prompt("Low Operating Range")
       
  2287     }
  1598     }
  2288     field(HIHI, DBF_DOUBLE) {
  1599     field(HIHI, DBF_DOUBLE) {
  2289         pp(TRUE)
  1600         promptgroup("70 - Alarm")
       
  1601         pp(TRUE)
       
  1602         interest(1)
       
  1603         prop(YES)
  2290         prompt("Hihi Alarm Limit")
  1604         prompt("Hihi Alarm Limit")
       
  1605     }
       
  1606     field(LOLO, DBF_DOUBLE) {
       
  1607         prompt("Lolo Alarm Limit")
  2291         prop(YES)
  1608         prop(YES)
  2292         interest(1)
  1609         interest(1)
  2293         promptgroup("70 - Alarm")
  1610         promptgroup("70 - Alarm")
  2294     }
  1611         pp(TRUE)
  2295     field(LOLO, DBF_DOUBLE) {
  1612     }
  2296         pp(TRUE)
  1613     field(HIGH, DBF_DOUBLE) {
  2297         promptgroup("70 - Alarm")
  1614         prompt("High Alarm Limit")
       
  1615         pp(TRUE)
       
  1616         promptgroup("70 - Alarm")
       
  1617         interest(1)
  2298         prop(YES)
  1618         prop(YES)
  2299         interest(1)
  1619     }
  2300         prompt("Lolo Alarm Limit")
  1620     field(LOW, DBF_DOUBLE) {
  2301     }
  1621         interest(1)
  2302     field(HIGH, DBF_DOUBLE) {
       
  2303         pp(TRUE)
       
  2304         prompt("High Alarm Limit")
       
  2305         promptgroup("70 - Alarm")
       
  2306         prop(YES)
  1622         prop(YES)
  2307         interest(1)
  1623         promptgroup("70 - Alarm")
  2308     }
       
  2309     field(LOW, DBF_DOUBLE) {
       
  2310         pp(TRUE)
  1624         pp(TRUE)
  2311         prompt("Low Alarm Limit")
  1625         prompt("Low Alarm Limit")
       
  1626     }
       
  1627     field(PREC, DBF_SHORT) {
       
  1628         promptgroup("80 - Display")
       
  1629         interest(1)
  2312         prop(YES)
  1630         prop(YES)
  2313         promptgroup("70 - Alarm")
  1631         prompt("Display Precision")
  2314         interest(1)
  1632     }
       
  1633     field(BRSV, DBF_MENU) {
       
  1634         promptgroup("70 - Alarm")
       
  1635         pp(TRUE)
       
  1636         interest(1)
       
  1637         menu(menuAlarmSevr)
       
  1638         prompt("Bad Return Severity")
  2315     }
  1639     }
  2316     field(HHSV, DBF_MENU) {
  1640     field(HHSV, DBF_MENU) {
  2317         menu(menuAlarmSevr)
       
  2318         prompt("Hihi Severity")
  1641         prompt("Hihi Severity")
  2319         promptgroup("70 - Alarm")
  1642         promptgroup("70 - Alarm")
       
  1643         pp(TRUE)
       
  1644         menu(menuAlarmSevr)
       
  1645         interest(1)
  2320         prop(YES)
  1646         prop(YES)
  2321         interest(1)
       
  2322         pp(TRUE)
       
  2323     }
  1647     }
  2324     field(LLSV, DBF_MENU) {
  1648     field(LLSV, DBF_MENU) {
       
  1649         promptgroup("70 - Alarm")
       
  1650         pp(TRUE)
       
  1651         interest(1)
       
  1652         menu(menuAlarmSevr)
       
  1653         prop(YES)
  2325         prompt("Lolo Severity")
  1654         prompt("Lolo Severity")
       
  1655     }
       
  1656     field(HSV, DBF_MENU) {
       
  1657         prompt("High Severity")
       
  1658         interest(1)
       
  1659         menu(menuAlarmSevr)
  2326         prop(YES)
  1660         prop(YES)
  2327         interest(1)
  1661         promptgroup("70 - Alarm")
  2328         promptgroup("70 - Alarm")
  1662         pp(TRUE)
  2329         menu(menuAlarmSevr)
  1663     }
  2330         pp(TRUE)
  1664     field(LSV, DBF_MENU) {
  2331     }
       
  2332     field(HSV, DBF_MENU) {
       
  2333         pp(TRUE)
       
  2334         menu(menuAlarmSevr)
  1665         menu(menuAlarmSevr)
  2335         prop(YES)
  1666         prop(YES)
  2336         interest(1)
  1667         interest(1)
  2337         promptgroup("70 - Alarm")
  1668         pp(TRUE)
  2338         prompt("High Severity")
  1669         promptgroup("70 - Alarm")
  2339     }
       
  2340     field(LSV, DBF_MENU) {
       
  2341         pp(TRUE)
       
  2342         prompt("Low Severity")
  1670         prompt("Low Severity")
  2343         prop(YES)
       
  2344         promptgroup("70 - Alarm")
       
  2345         interest(1)
       
  2346         menu(menuAlarmSevr)
       
  2347     }
  1671     }
  2348     field(HYST, DBF_DOUBLE) {
  1672     field(HYST, DBF_DOUBLE) {
  2349         promptgroup("70 - Alarm")
       
  2350         interest(1)
       
  2351         prompt("Alarm Deadband")
  1673         prompt("Alarm Deadband")
       
  1674         interest(1)
       
  1675         promptgroup("70 - Alarm")
  2352     }
  1676     }
  2353     field(ADEL, DBF_DOUBLE) {
  1677     field(ADEL, DBF_DOUBLE) {
  2354         prompt("Archive Deadband")
  1678         prompt("Archive Deadband")
  2355         interest(1)
       
  2356         promptgroup("80 - Display")
  1679         promptgroup("80 - Display")
       
  1680         interest(1)
  2357     }
  1681     }
  2358     field(MDEL, DBF_DOUBLE) {
  1682     field(MDEL, DBF_DOUBLE) {
       
  1683         promptgroup("80 - Display")
       
  1684         interest(1)
  2359         prompt("Monitor Deadband")
  1685         prompt("Monitor Deadband")
  2360         promptgroup("80 - Display")
       
  2361         interest(1)
       
  2362     }
  1686     }
  2363     field(A, DBF_DOUBLE) {
  1687     field(A, DBF_DOUBLE) {
  2364         pp(TRUE)
  1688         pp(TRUE)
  2365         prompt("Value of Input A")
  1689         prompt("Value of Input A")
  2366     }
  1690     }
  2367     field(B, DBF_DOUBLE) {
  1691     field(B, DBF_DOUBLE) {
       
  1692         pp(TRUE)
  2368         prompt("Value of Input B")
  1693         prompt("Value of Input B")
  2369         pp(TRUE)
       
  2370     }
  1694     }
  2371     field(C, DBF_DOUBLE) {
  1695     field(C, DBF_DOUBLE) {
  2372         pp(TRUE)
  1696         pp(TRUE)
  2373         prompt("Value of Input C")
  1697         prompt("Value of Input C")
  2374     }
  1698     }
  2375     field(D, DBF_DOUBLE) {
  1699     field(D, DBF_DOUBLE) {
  2376         pp(TRUE)
       
  2377         prompt("Value of Input D")
  1700         prompt("Value of Input D")
       
  1701         pp(TRUE)
  2378     }
  1702     }
  2379     field(E, DBF_DOUBLE) {
  1703     field(E, DBF_DOUBLE) {
  2380         prompt("Value of Input E")
  1704         prompt("Value of Input E")
  2381         pp(TRUE)
  1705         pp(TRUE)
  2382     }
  1706     }
  2383     field(F, DBF_DOUBLE) {
  1707     field(F, DBF_DOUBLE) {
  2384         pp(TRUE)
       
  2385         prompt("Value of Input F")
  1708         prompt("Value of Input F")
       
  1709         pp(TRUE)
  2386     }
  1710     }
  2387     field(G, DBF_DOUBLE) {
  1711     field(G, DBF_DOUBLE) {
  2388         pp(TRUE)
       
  2389         prompt("Value of Input G")
  1712         prompt("Value of Input G")
       
  1713         pp(TRUE)
  2390     }
  1714     }
  2391     field(H, DBF_DOUBLE) {
  1715     field(H, DBF_DOUBLE) {
  2392         prompt("Value of Input H")
  1716         prompt("Value of Input H")
  2393         pp(TRUE)
  1717         pp(TRUE)
  2394     }
  1718     }
  2395     field(I, DBF_DOUBLE) {
  1719     field(I, DBF_DOUBLE) {
  2396         pp(TRUE)
  1720         pp(TRUE)
  2397         prompt("Value of Input I")
  1721         prompt("Value of Input I")
  2398     }
  1722     }
  2399     field(J, DBF_DOUBLE) {
  1723     field(J, DBF_DOUBLE) {
       
  1724         pp(TRUE)
  2400         prompt("Value of Input J")
  1725         prompt("Value of Input J")
  2401         pp(TRUE)
       
  2402     }
  1726     }
  2403     field(K, DBF_DOUBLE) {
  1727     field(K, DBF_DOUBLE) {
  2404         pp(TRUE)
       
  2405         prompt("Value of Input K")
  1728         prompt("Value of Input K")
       
  1729         pp(TRUE)
  2406     }
  1730     }
  2407     field(L, DBF_DOUBLE) {
  1731     field(L, DBF_DOUBLE) {
  2408         prompt("Value of Input L")
  1732         prompt("Value of Input L")
  2409         pp(TRUE)
  1733         pp(TRUE)
  2410     }
  1734     }
  2411     field(LA, DBF_DOUBLE) {
  1735     field(LA, DBF_DOUBLE) {
       
  1736         special(SPC_NOMOD)
       
  1737         interest(3)
  2412         prompt("Prev Value of A")
  1738         prompt("Prev Value of A")
  2413         interest(3)
       
  2414         special(SPC_NOMOD)
       
  2415     }
  1739     }
  2416     field(LB, DBF_DOUBLE) {
  1740     field(LB, DBF_DOUBLE) {
  2417         special(SPC_NOMOD)
  1741         interest(3)
  2418         interest(3)
  1742         special(SPC_NOMOD)
  2419         prompt("Prev Value of B")
  1743         prompt("Prev Value of B")
  2420     }
  1744     }
  2421     field(LC, DBF_DOUBLE) {
  1745     field(LC, DBF_DOUBLE) {
       
  1746         interest(3)
       
  1747         special(SPC_NOMOD)
  2422         prompt("Prev Value of C")
  1748         prompt("Prev Value of C")
  2423         special(SPC_NOMOD)
       
  2424         interest(3)
       
  2425     }
  1749     }
  2426     field(LD, DBF_DOUBLE) {
  1750     field(LD, DBF_DOUBLE) {
  2427         prompt("Prev Value of D")
  1751         prompt("Prev Value of D")
  2428         interest(3)
  1752         special(SPC_NOMOD)
  2429         special(SPC_NOMOD)
  1753         interest(3)
  2430     }
  1754     }
  2431     field(LE, DBF_DOUBLE) {
  1755     field(LE, DBF_DOUBLE) {
       
  1756         interest(3)
       
  1757         special(SPC_NOMOD)
  2432         prompt("Prev Value of E")
  1758         prompt("Prev Value of E")
  2433         interest(3)
       
  2434         special(SPC_NOMOD)
       
  2435     }
  1759     }
  2436     field(LF, DBF_DOUBLE) {
  1760     field(LF, DBF_DOUBLE) {
  2437         special(SPC_NOMOD)
       
  2438         interest(3)
       
  2439         prompt("Prev Value of F")
  1761         prompt("Prev Value of F")
       
  1762         interest(3)
       
  1763         special(SPC_NOMOD)
  2440     }
  1764     }
  2441     field(LG, DBF_DOUBLE) {
  1765     field(LG, DBF_DOUBLE) {
  2442         special(SPC_NOMOD)
  1766         interest(3)
  2443         interest(3)
  1767         special(SPC_NOMOD)
  2444         prompt("Prev Value of G")
  1768         prompt("Prev Value of G")
  2445     }
  1769     }
  2446     field(LH, DBF_DOUBLE) {
  1770     field(LH, DBF_DOUBLE) {
       
  1771         interest(3)
       
  1772         special(SPC_NOMOD)
  2447         prompt("Prev Value of H")
  1773         prompt("Prev Value of H")
  2448         interest(3)
       
  2449         special(SPC_NOMOD)
       
  2450     }
  1774     }
  2451     field(LI, DBF_DOUBLE) {
  1775     field(LI, DBF_DOUBLE) {
  2452         special(SPC_NOMOD)
       
  2453         interest(3)
       
  2454         prompt("Prev Value of I")
  1776         prompt("Prev Value of I")
       
  1777         interest(3)
       
  1778         special(SPC_NOMOD)
  2455     }
  1779     }
  2456     field(LJ, DBF_DOUBLE) {
  1780     field(LJ, DBF_DOUBLE) {
  2457         prompt("Prev Value of J")
  1781         prompt("Prev Value of J")
  2458         special(SPC_NOMOD)
  1782         interest(3)
  2459         interest(3)
  1783         special(SPC_NOMOD)
  2460     }
  1784     }
  2461     field(LK, DBF_DOUBLE) {
  1785     field(LK, DBF_DOUBLE) {
  2462         special(SPC_NOMOD)
  1786         special(SPC_NOMOD)
  2463         interest(3)
  1787         interest(3)
  2464         prompt("Prev Value of K")
  1788         prompt("Prev Value of K")
  2465     }
  1789     }
  2466     field(LL, DBF_DOUBLE) {
  1790     field(LL, DBF_DOUBLE) {
  2467         interest(3)
       
  2468         special(SPC_NOMOD)
       
  2469         prompt("Prev Value of L")
  1791         prompt("Prev Value of L")
       
  1792         interest(3)
       
  1793         special(SPC_NOMOD)
  2470     }
  1794     }
  2471     field(LALM, DBF_DOUBLE) {
  1795     field(LALM, DBF_DOUBLE) {
       
  1796         special(SPC_NOMOD)
       
  1797         interest(3)
  2472         prompt("Last Value Alarmed")
  1798         prompt("Last Value Alarmed")
  2473         special(SPC_NOMOD)
       
  2474         interest(3)
       
  2475     }
  1799     }
  2476     field(ALST, DBF_DOUBLE) {
  1800     field(ALST, DBF_DOUBLE) {
       
  1801         special(SPC_NOMOD)
       
  1802         interest(3)
  2477         prompt("Last Value Archived")
  1803         prompt("Last Value Archived")
  2478         interest(3)
       
  2479         special(SPC_NOMOD)
       
  2480     }
  1804     }
  2481     field(MLST, DBF_DOUBLE) {
  1805     field(MLST, DBF_DOUBLE) {
  2482         prompt("Last Val Monitored")
  1806         prompt("Last Value Monitored")
  2483         interest(3)
  1807         interest(3)
  2484         special(SPC_NOMOD)
  1808         special(SPC_NOMOD)
  2485     }
       
  2486     field(NLST, DBF_USHORT) {
       
  2487         special(SPC_NOMOD)
       
  2488         interest(3)
       
  2489         prompt("Last Index Monitored")
       
  2490     }
  1809     }
  2491 }
  1810 }
  2492 recordtype(scalcout) {
  1811 recordtype(ai) {
  2493     %#include "epicsTypes.h"
       
  2494     %#include "link.h"
       
  2495     %#include "epicsMutex.h"
       
  2496     %#include "ellLib.h"
       
  2497     %#include "epicsTime.h"
       
  2498     field(NAME, DBF_STRING) {
       
  2499         size(61)
       
  2500         special(SPC_NOMOD)
       
  2501         prompt("Record Name")
       
  2502     }
       
  2503     field(DESC, DBF_STRING) {
       
  2504         size(41)
       
  2505         promptgroup("10 - Common")
       
  2506         prompt("Descriptor")
       
  2507     }
       
  2508     field(ASG, DBF_STRING) {
       
  2509         size(29)
       
  2510         prompt("Access Security Group")
       
  2511         special(SPC_AS)
       
  2512         promptgroup("10 - Common")
       
  2513     }
       
  2514     field(SCAN, DBF_MENU) {
       
  2515         interest(1)
       
  2516         special(SPC_SCAN)
       
  2517         promptgroup("20 - Scan")
       
  2518         prompt("Scan Mechanism")
       
  2519         menu(menuScan)
       
  2520     }
       
  2521     field(PINI, DBF_MENU) {
       
  2522         prompt("Process at iocInit")
       
  2523         promptgroup("20 - Scan")
       
  2524         interest(1)
       
  2525         menu(menuPini)
       
  2526     }
       
  2527     field(PHAS, DBF_SHORT) {
       
  2528         special(SPC_SCAN)
       
  2529         interest(1)
       
  2530         promptgroup("20 - Scan")
       
  2531         prompt("Scan Phase")
       
  2532     }
       
  2533     field(EVNT, DBF_STRING) {
       
  2534         size(40)
       
  2535         prompt("Event Name")
       
  2536         interest(1)
       
  2537         special(SPC_SCAN)
       
  2538         promptgroup("20 - Scan")
       
  2539     }
       
  2540     field(TSE, DBF_SHORT) {
       
  2541         interest(1)
       
  2542         promptgroup("20 - Scan")
       
  2543         prompt("Time Stamp Event")
       
  2544     }
       
  2545     field(TSEL, DBF_INLINK) {
       
  2546         promptgroup("20 - Scan")
       
  2547         interest(1)
       
  2548         prompt("Time Stamp Link")
       
  2549     }
       
  2550     field(DTYP, DBF_DEVICE) {
       
  2551         promptgroup("10 - Common")
       
  2552         interest(1)
       
  2553         prompt("Device Type")
       
  2554     }
       
  2555     field(DISV, DBF_SHORT) {
       
  2556         initial("1")
       
  2557         promptgroup("20 - Scan")
       
  2558         prompt("Disable Value")
       
  2559     }
       
  2560     field(DISA, DBF_SHORT) {
       
  2561         prompt("Disable")
       
  2562     }
       
  2563     field(SDIS, DBF_INLINK) {
       
  2564         interest(1)
       
  2565         promptgroup("20 - Scan")
       
  2566         prompt("Scanning Disable")
       
  2567     }
       
  2568     field(MLOK, DBF_NOACCESS) {
       
  2569         special(SPC_NOMOD)
       
  2570         interest(4)
       
  2571         prompt("Monitor lock")
       
  2572         extra("epicsMutexId        mlok")
       
  2573     }
       
  2574     field(MLIS, DBF_NOACCESS) {
       
  2575         prompt("Monitor List")
       
  2576         interest(4)
       
  2577         special(SPC_NOMOD)
       
  2578         extra("ELLLIST             mlis")
       
  2579     }
       
  2580     field(BKLNK, DBF_NOACCESS) {
       
  2581         special(SPC_NOMOD)
       
  2582         interest(4)
       
  2583         prompt("Backwards link tracking")
       
  2584         extra("ELLLIST             bklnk")
       
  2585     }
       
  2586     field(DISP, DBF_UCHAR) {
       
  2587         prompt("Disable putField")
       
  2588     }
       
  2589     field(PROC, DBF_UCHAR) {
       
  2590         prompt("Force Processing")
       
  2591         interest(3)
       
  2592         pp(TRUE)
       
  2593     }
       
  2594     field(STAT, DBF_MENU) {
       
  2595         special(SPC_NOMOD)
       
  2596         prompt("Alarm Status")
       
  2597         menu(menuAlarmStat)
       
  2598         initial("UDF")
       
  2599     }
       
  2600     field(SEVR, DBF_MENU) {
       
  2601         special(SPC_NOMOD)
       
  2602         prompt("Alarm Severity")
       
  2603         menu(menuAlarmSevr)
       
  2604     }
       
  2605     field(NSTA, DBF_MENU) {
       
  2606         menu(menuAlarmStat)
       
  2607         special(SPC_NOMOD)
       
  2608         interest(2)
       
  2609         prompt("New Alarm Status")
       
  2610     }
       
  2611     field(NSEV, DBF_MENU) {
       
  2612         special(SPC_NOMOD)
       
  2613         interest(2)
       
  2614         prompt("New Alarm Severity")
       
  2615         menu(menuAlarmSevr)
       
  2616     }
       
  2617     field(ACKS, DBF_MENU) {
       
  2618         interest(2)
       
  2619         special(SPC_NOMOD)
       
  2620         prompt("Alarm Ack Severity")
       
  2621         menu(menuAlarmSevr)
       
  2622     }
       
  2623     field(ACKT, DBF_MENU) {
       
  2624         menu(menuYesNo)
       
  2625         interest(2)
       
  2626         promptgroup("70 - Alarm")
       
  2627         special(SPC_NOMOD)
       
  2628         prompt("Alarm Ack Transient")
       
  2629         initial("YES")
       
  2630     }
       
  2631     field(DISS, DBF_MENU) {
       
  2632         menu(menuAlarmSevr)
       
  2633         promptgroup("70 - Alarm")
       
  2634         interest(1)
       
  2635         prompt("Disable Alarm Sevrty")
       
  2636     }
       
  2637     field(LCNT, DBF_UCHAR) {
       
  2638         interest(2)
       
  2639         special(SPC_NOMOD)
       
  2640         prompt("Lock Count")
       
  2641     }
       
  2642     field(PACT, DBF_UCHAR) {
       
  2643         interest(1)
       
  2644         special(SPC_NOMOD)
       
  2645         prompt("Record active")
       
  2646     }
       
  2647     field(PUTF, DBF_UCHAR) {
       
  2648         interest(1)
       
  2649         special(SPC_NOMOD)
       
  2650         prompt("dbPutField process")
       
  2651     }
       
  2652     field(RPRO, DBF_UCHAR) {
       
  2653         interest(1)
       
  2654         special(SPC_NOMOD)
       
  2655         prompt("Reprocess ")
       
  2656     }
       
  2657     field(ASP, DBF_NOACCESS) {
       
  2658         interest(4)
       
  2659         special(SPC_NOMOD)
       
  2660         prompt("Access Security Pvt")
       
  2661         extra("struct asgMember    *asp")
       
  2662     }
       
  2663     field(PPN, DBF_NOACCESS) {
       
  2664         prompt("pprocessNotify")
       
  2665         interest(4)
       
  2666         special(SPC_NOMOD)
       
  2667         extra("struct processNotify *ppn")
       
  2668     }
       
  2669     field(PPNR, DBF_NOACCESS) {
       
  2670         extra("struct processNotifyRecord *ppnr")
       
  2671         prompt("pprocessNotifyRecord")
       
  2672         special(SPC_NOMOD)
       
  2673         interest(4)
       
  2674     }
       
  2675     field(SPVT, DBF_NOACCESS) {
       
  2676         extra("struct scan_element *spvt")
       
  2677         prompt("Scan Private")
       
  2678         special(SPC_NOMOD)
       
  2679         interest(4)
       
  2680     }
       
  2681     field(RSET, DBF_NOACCESS) {
       
  2682         extra("struct typed_rset   *rset")
       
  2683         special(SPC_NOMOD)
       
  2684         interest(4)
       
  2685         prompt("Address of RSET")
       
  2686     }
       
  2687     field(DSET, DBF_NOACCESS) {
       
  2688         extra("struct dset         *dset")
       
  2689         interest(4)
       
  2690         special(SPC_NOMOD)
       
  2691         prompt("DSET address")
       
  2692     }
       
  2693     field(DPVT, DBF_NOACCESS) {
       
  2694         prompt("Device Private")
       
  2695         special(SPC_NOMOD)
       
  2696         interest(4)
       
  2697         extra("void                *dpvt")
       
  2698     }
       
  2699     field(RDES, DBF_NOACCESS) {
       
  2700         extra("struct dbRecordType *rdes")
       
  2701         interest(4)
       
  2702         special(SPC_NOMOD)
       
  2703         prompt("Address of dbRecordType")
       
  2704     }
       
  2705     field(LSET, DBF_NOACCESS) {
       
  2706         prompt("Lock Set")
       
  2707         interest(4)
       
  2708         special(SPC_NOMOD)
       
  2709         extra("struct lockRecord   *lset")
       
  2710     }
       
  2711     field(PRIO, DBF_MENU) {
       
  2712         menu(menuPriority)
       
  2713         prompt("Scheduling Priority")
       
  2714         promptgroup("20 - Scan")
       
  2715         interest(1)
       
  2716         special(SPC_SCAN)
       
  2717     }
       
  2718     field(TPRO, DBF_UCHAR) {
       
  2719         prompt("Trace Processing")
       
  2720     }
       
  2721     field(BKPT, DBF_NOACCESS) {
       
  2722         extra("char                bkpt")
       
  2723         prompt("Break Point")
       
  2724         interest(1)
       
  2725         special(SPC_NOMOD)
       
  2726     }
       
  2727     field(UDF, DBF_UCHAR) {
       
  2728         promptgroup("10 - Common")
       
  2729         interest(1)
       
  2730         prompt("Undefined")
       
  2731         pp(TRUE)
       
  2732         initial("1")
       
  2733     }
       
  2734     field(UDFS, DBF_MENU) {
       
  2735         initial("INVALID")
       
  2736         prompt("Undefined Alarm Sevrty")
       
  2737         interest(1)
       
  2738         promptgroup("70 - Alarm")
       
  2739         menu(menuAlarmSevr)
       
  2740     }
       
  2741     field(TIME, DBF_NOACCESS) {
       
  2742         interest(2)
       
  2743         special(SPC_NOMOD)
       
  2744         prompt("Time")
       
  2745         extra("epicsTimeStamp      time")
       
  2746     }
       
  2747     field(FLNK, DBF_FWDLINK) {
       
  2748         prompt("Forward Process Link")
       
  2749         interest(1)
       
  2750         promptgroup("20 - Scan")
       
  2751     }
       
  2752     field(VERS, DBF_DOUBLE) {
       
  2753         prompt("Code Version")
       
  2754         special(SPC_NOMOD)
       
  2755         initial("1")
       
  2756     }
       
  2757     field(RPVT, DBF_NOACCESS) {
       
  2758         special(SPC_NOMOD)
       
  2759         interest(4)
       
  2760         prompt("Record Private")
       
  2761         extra("void *rpvt")
       
  2762         size(4)
       
  2763     }
       
  2764     field(VAL, DBF_DOUBLE) {
       
  2765         asl(ASL0)
       
  2766         prompt("Result")
       
  2767     }
       
  2768     field(SVAL, DBF_STRING) {
       
  2769         prompt("String result")
       
  2770         asl(ASL0)
       
  2771         size(40)
       
  2772     }
       
  2773     field(PVAL, DBF_DOUBLE) {
       
  2774         prompt("Previous Value")
       
  2775     }
       
  2776     field(PSVL, DBF_STRING) {
       
  2777         prompt("Previous string result")
       
  2778         special(SPC_NOMOD)
       
  2779         size(40)
       
  2780     }
       
  2781     field(CALC, DBF_STRING) {
       
  2782         prompt("Calculation")
       
  2783         promptgroup("30 - Action")
       
  2784         special(SPC_MOD)
       
  2785         pp(TRUE)
       
  2786         size(80)
       
  2787     }
       
  2788     field(CLCV, DBF_LONG) {
       
  2789         interest(1)
       
  2790         prompt("CALC Valid")
       
  2791     }
       
  2792     field(INPA, DBF_INLINK) {
       
  2793         special(SPC_MOD)
       
  2794         interest(1)
       
  2795         promptgroup("30 - Action")
       
  2796         prompt("Input A")
       
  2797     }
       
  2798     field(INPB, DBF_INLINK) {
       
  2799         interest(1)
       
  2800         special(SPC_MOD)
       
  2801         promptgroup("30 - Action")
       
  2802         prompt("Input B")
       
  2803     }
       
  2804     field(INPC, DBF_INLINK) {
       
  2805         interest(1)
       
  2806         special(SPC_MOD)
       
  2807         promptgroup("30 - Action")
       
  2808         prompt("Input C")
       
  2809     }
       
  2810     field(INPD, DBF_INLINK) {
       
  2811         interest(1)
       
  2812         promptgroup("30 - Action")
       
  2813         special(SPC_MOD)
       
  2814         prompt("Input D")
       
  2815     }
       
  2816     field(INPE, DBF_INLINK) {
       
  2817         special(SPC_MOD)
       
  2818         interest(1)
       
  2819         promptgroup("30 - Action")
       
  2820         prompt("Input E")
       
  2821     }
       
  2822     field(INPF, DBF_INLINK) {
       
  2823         special(SPC_MOD)
       
  2824         interest(1)
       
  2825         promptgroup("30 - Action")
       
  2826         prompt("Input F")
       
  2827     }
       
  2828     field(INPG, DBF_INLINK) {
       
  2829         prompt("Input G")
       
  2830         interest(1)
       
  2831         special(SPC_MOD)
       
  2832         promptgroup("30 - Action")
       
  2833     }
       
  2834     field(INPH, DBF_INLINK) {
       
  2835         interest(1)
       
  2836         special(SPC_MOD)
       
  2837         promptgroup("30 - Action")
       
  2838         prompt("Input H")
       
  2839     }
       
  2840     field(INPI, DBF_INLINK) {
       
  2841         interest(1)
       
  2842         special(SPC_MOD)
       
  2843         promptgroup("30 - Action")
       
  2844         prompt("Input I")
       
  2845     }
       
  2846     field(INPJ, DBF_INLINK) {
       
  2847         prompt("Input J")
       
  2848         promptgroup("30 - Action")
       
  2849         interest(1)
       
  2850         special(SPC_MOD)
       
  2851     }
       
  2852     field(INPK, DBF_INLINK) {
       
  2853         special(SPC_MOD)
       
  2854         interest(1)
       
  2855         promptgroup("30 - Action")
       
  2856         prompt("Input K")
       
  2857     }
       
  2858     field(INPL, DBF_INLINK) {
       
  2859         interest(1)
       
  2860         promptgroup("30 - Action")
       
  2861         special(SPC_MOD)
       
  2862         prompt("Input L")
       
  2863     }
       
  2864     field(INAA, DBF_INLINK) {
       
  2865         prompt("String input AA")
       
  2866         promptgroup("30 - Action")
       
  2867         interest(1)
       
  2868         special(SPC_MOD)
       
  2869     }
       
  2870     field(INBB, DBF_INLINK) {
       
  2871         prompt("String input BB")
       
  2872         promptgroup("30 - Action")
       
  2873         interest(1)
       
  2874         special(SPC_MOD)
       
  2875     }
       
  2876     field(INCC, DBF_INLINK) {
       
  2877         promptgroup("30 - Action")
       
  2878         interest(1)
       
  2879         special(SPC_MOD)
       
  2880         prompt("String input CC")
       
  2881     }
       
  2882     field(INDD, DBF_INLINK) {
       
  2883         prompt("String input DD")
       
  2884         interest(1)
       
  2885         special(SPC_MOD)
       
  2886         promptgroup("30 - Action")
       
  2887     }
       
  2888     field(INEE, DBF_INLINK) {
       
  2889         prompt("String input EE")
       
  2890         special(SPC_MOD)
       
  2891         interest(1)
       
  2892         promptgroup("30 - Action")
       
  2893     }
       
  2894     field(INFF, DBF_INLINK) {
       
  2895         interest(1)
       
  2896         special(SPC_MOD)
       
  2897         promptgroup("30 - Action")
       
  2898         prompt("String input FF")
       
  2899     }
       
  2900     field(INGG, DBF_INLINK) {
       
  2901         interest(1)
       
  2902         special(SPC_MOD)
       
  2903         promptgroup("30 - Action")
       
  2904         prompt("String input GG")
       
  2905     }
       
  2906     field(INHH, DBF_INLINK) {
       
  2907         prompt("String input HH")
       
  2908         interest(1)
       
  2909         promptgroup("30 - Action")
       
  2910         special(SPC_MOD)
       
  2911     }
       
  2912     field(INII, DBF_INLINK) {
       
  2913         promptgroup("30 - Action")
       
  2914         interest(1)
       
  2915         special(SPC_MOD)
       
  2916         prompt("String input II")
       
  2917     }
       
  2918     field(INJJ, DBF_INLINK) {
       
  2919         prompt("String input JJ")
       
  2920         promptgroup("30 - Action")
       
  2921         interest(1)
       
  2922         special(SPC_MOD)
       
  2923     }
       
  2924     field(INKK, DBF_INLINK) {
       
  2925         promptgroup("30 - Action")
       
  2926         interest(1)
       
  2927         special(SPC_MOD)
       
  2928         prompt("String input KK")
       
  2929     }
       
  2930     field(INLL, DBF_INLINK) {
       
  2931         interest(1)
       
  2932         promptgroup("30 - Action")
       
  2933         special(SPC_MOD)
       
  2934         prompt("String input LL")
       
  2935     }
       
  2936     field(OUT, DBF_OUTLINK) {
       
  2937         prompt("Output Link")
       
  2938         promptgroup("50 - Output")
       
  2939         interest(1)
       
  2940         special(SPC_MOD)
       
  2941     }
       
  2942     field(INAV, DBF_MENU) {
       
  2943         initial("1")
       
  2944         menu(scalcoutINAV)
       
  2945         prompt("INPA PV Status")
       
  2946         special(SPC_NOMOD)
       
  2947         interest(1)
       
  2948     }
       
  2949     field(INBV, DBF_MENU) {
       
  2950         menu(scalcoutINAV)
       
  2951         special(SPC_NOMOD)
       
  2952         interest(1)
       
  2953         prompt("INPB PV Status")
       
  2954         initial("1")
       
  2955     }
       
  2956     field(INCV, DBF_MENU) {
       
  2957         initial("1")
       
  2958         menu(scalcoutINAV)
       
  2959         special(SPC_NOMOD)
       
  2960         interest(1)
       
  2961         prompt("INPC PV Status")
       
  2962     }
       
  2963     field(INDV, DBF_MENU) {
       
  2964         initial("1")
       
  2965         menu(scalcoutINAV)
       
  2966         special(SPC_NOMOD)
       
  2967         interest(1)
       
  2968         prompt("INPD PV Status")
       
  2969     }
       
  2970     field(INEV, DBF_MENU) {
       
  2971         interest(1)
       
  2972         special(SPC_NOMOD)
       
  2973         prompt("INPE PV Status")
       
  2974         menu(scalcoutINAV)
       
  2975         initial("1")
       
  2976     }
       
  2977     field(INFV, DBF_MENU) {
       
  2978         prompt("INPF PV Status")
       
  2979         interest(1)
       
  2980         special(SPC_NOMOD)
       
  2981         menu(scalcoutINAV)
       
  2982         initial("1")
       
  2983     }
       
  2984     field(INGV, DBF_MENU) {
       
  2985         initial("1")
       
  2986         special(SPC_NOMOD)
       
  2987         interest(1)
       
  2988         prompt("INPG PV Status")
       
  2989         menu(scalcoutINAV)
       
  2990     }
       
  2991     field(INHV, DBF_MENU) {
       
  2992         initial("1")
       
  2993         menu(scalcoutINAV)
       
  2994         prompt("INPH PV Status")
       
  2995         interest(1)
       
  2996         special(SPC_NOMOD)
       
  2997     }
       
  2998     field(INIV, DBF_MENU) {
       
  2999         initial("1")
       
  3000         prompt("INPI PV Status")
       
  3001         special(SPC_NOMOD)
       
  3002         interest(1)
       
  3003         menu(scalcoutINAV)
       
  3004     }
       
  3005     field(INJV, DBF_MENU) {
       
  3006         initial("1")
       
  3007         menu(scalcoutINAV)
       
  3008         special(SPC_NOMOD)
       
  3009         interest(1)
       
  3010         prompt("INPJ PV Status")
       
  3011     }
       
  3012     field(INKV, DBF_MENU) {
       
  3013         initial("1")
       
  3014         prompt("INPK PV Status")
       
  3015         interest(1)
       
  3016         special(SPC_NOMOD)
       
  3017         menu(scalcoutINAV)
       
  3018     }
       
  3019     field(INLV, DBF_MENU) {
       
  3020         initial("1")
       
  3021         menu(scalcoutINAV)
       
  3022         prompt("INPL PV Status")
       
  3023         interest(1)
       
  3024         special(SPC_NOMOD)
       
  3025     }
       
  3026     field(IAAV, DBF_MENU) {
       
  3027         initial("1")
       
  3028         menu(scalcoutINAV)
       
  3029         prompt("INAA PV Status")
       
  3030         interest(1)
       
  3031         special(SPC_NOMOD)
       
  3032     }
       
  3033     field(IBBV, DBF_MENU) {
       
  3034         special(SPC_NOMOD)
       
  3035         interest(1)
       
  3036         prompt("INBB PV Status")
       
  3037         menu(scalcoutINAV)
       
  3038         initial("1")
       
  3039     }
       
  3040     field(ICCV, DBF_MENU) {
       
  3041         initial("1")
       
  3042         prompt("INCC PV Status")
       
  3043         interest(1)
       
  3044         special(SPC_NOMOD)
       
  3045         menu(scalcoutINAV)
       
  3046     }
       
  3047     field(IDDV, DBF_MENU) {
       
  3048         interest(1)
       
  3049         special(SPC_NOMOD)
       
  3050         prompt("INDD PV Status")
       
  3051         menu(scalcoutINAV)
       
  3052         initial("1")
       
  3053     }
       
  3054     field(IEEV, DBF_MENU) {
       
  3055         interest(1)
       
  3056         special(SPC_NOMOD)
       
  3057         prompt("INEE PV Status")
       
  3058         menu(scalcoutINAV)
       
  3059         initial("1")
       
  3060     }
       
  3061     field(IFFV, DBF_MENU) {
       
  3062         initial("1")
       
  3063         menu(scalcoutINAV)
       
  3064         prompt("INFF PV Status")
       
  3065         special(SPC_NOMOD)
       
  3066         interest(1)
       
  3067     }
       
  3068     field(IGGV, DBF_MENU) {
       
  3069         initial("1")
       
  3070         prompt("INGG PV Status")
       
  3071         special(SPC_NOMOD)
       
  3072         interest(1)
       
  3073         menu(scalcoutINAV)
       
  3074     }
       
  3075     field(IHHV, DBF_MENU) {
       
  3076         initial("1")
       
  3077         interest(1)
       
  3078         special(SPC_NOMOD)
       
  3079         prompt("INHH PV Status")
       
  3080         menu(scalcoutINAV)
       
  3081     }
       
  3082     field(IIIV, DBF_MENU) {
       
  3083         interest(1)
       
  3084         special(SPC_NOMOD)
       
  3085         prompt("INII PV Status")
       
  3086         menu(scalcoutINAV)
       
  3087         initial("1")
       
  3088     }
       
  3089     field(IJJV, DBF_MENU) {
       
  3090         menu(scalcoutINAV)
       
  3091         special(SPC_NOMOD)
       
  3092         interest(1)
       
  3093         prompt("INJJ PV Status")
       
  3094         initial("1")
       
  3095     }
       
  3096     field(IKKV, DBF_MENU) {
       
  3097         menu(scalcoutINAV)
       
  3098         prompt("INKK PV Status")
       
  3099         special(SPC_NOMOD)
       
  3100         interest(1)
       
  3101         initial("1")
       
  3102     }
       
  3103     field(ILLV, DBF_MENU) {
       
  3104         interest(1)
       
  3105         special(SPC_NOMOD)
       
  3106         prompt("INLL PV Status")
       
  3107         menu(scalcoutINAV)
       
  3108         initial("1")
       
  3109     }
       
  3110     field(OUTV, DBF_MENU) {
       
  3111         menu(scalcoutINAV)
       
  3112         prompt("OUT PV Status")
       
  3113         special(SPC_NOMOD)
       
  3114         interest(1)
       
  3115     }
       
  3116     field(OOPT, DBF_MENU) {
       
  3117         prompt("Output Execute Opt")
       
  3118         interest(1)
       
  3119         promptgroup("30 - Action")
       
  3120         menu(scalcoutOOPT)
       
  3121     }
       
  3122     field(ODLY, DBF_DOUBLE) {
       
  3123         prompt("Output Execute Delay")
       
  3124         promptgroup("70 - Alarm")
       
  3125         interest(1)
       
  3126         asl(ASL0)
       
  3127     }
       
  3128     field(WAIT, DBF_MENU) {
       
  3129         menu(scalcoutWAIT)
       
  3130         interest(1)
       
  3131         prompt("Wait for completion?")
       
  3132     }
       
  3133     field(DLYA, DBF_USHORT) {
       
  3134         special(SPC_NOMOD)
       
  3135         prompt("Output Delay Active")
       
  3136         asl(ASL0)
       
  3137     }
       
  3138     field(DOPT, DBF_MENU) {
       
  3139         menu(scalcoutDOPT)
       
  3140         promptgroup("30 - Action")
       
  3141         interest(1)
       
  3142         prompt("Output Data Opt")
       
  3143     }
       
  3144     field(OCAL, DBF_STRING) {
       
  3145         prompt("Output Calculation")
       
  3146         promptgroup("30 - Action")
       
  3147         special(SPC_MOD)
       
  3148         size(80)
       
  3149         pp(TRUE)
       
  3150     }
       
  3151     field(OCLV, DBF_LONG) {
       
  3152         prompt("OCAL Valid")
       
  3153         interest(1)
       
  3154     }
       
  3155     field(OEVT, DBF_USHORT) {
       
  3156         asl(ASL0)
       
  3157         promptgroup("30 - Action")
       
  3158         prompt("Event To Issue")
       
  3159     }
       
  3160     field(IVOA, DBF_MENU) {
       
  3161         prompt("INVALID output action")
       
  3162         promptgroup("50 - Output")
       
  3163         interest(2)
       
  3164         menu(menuIvoa)
       
  3165     }
       
  3166     field(IVOV, DBF_DOUBLE) {
       
  3167         interest(2)
       
  3168         promptgroup("50 - Output")
       
  3169         prompt("INVALID output value")
       
  3170     }
       
  3171     field(EGU, DBF_STRING) {
       
  3172         prompt("Units Name")
       
  3173         promptgroup("80 - Display")
       
  3174         interest(1)
       
  3175         size(16)
       
  3176     }
       
  3177     field(PREC, DBF_SHORT) {
       
  3178         promptgroup("80 - Display")
       
  3179         interest(1)
       
  3180         prompt("Display Precision")
       
  3181     }
       
  3182     field(HOPR, DBF_DOUBLE) {
       
  3183         prompt("High Operating Rng")
       
  3184         promptgroup("80 - Display")
       
  3185         interest(1)
       
  3186     }
       
  3187     field(LOPR, DBF_DOUBLE) {
       
  3188         prompt("Low Operating Range")
       
  3189         interest(1)
       
  3190         promptgroup("80 - Display")
       
  3191     }
       
  3192     field(HIHI, DBF_DOUBLE) {
       
  3193         promptgroup("70 - Alarm")
       
  3194         interest(1)
       
  3195         prompt("Hihi Alarm Limit")
       
  3196         pp(TRUE)
       
  3197     }
       
  3198     field(LOLO, DBF_DOUBLE) {
       
  3199         prompt("Lolo Alarm Limit")
       
  3200         promptgroup("70 - Alarm")
       
  3201         interest(1)
       
  3202         pp(TRUE)
       
  3203     }
       
  3204     field(HIGH, DBF_DOUBLE) {
       
  3205         prompt("High Alarm Limit")
       
  3206         interest(1)
       
  3207         promptgroup("70 - Alarm")
       
  3208         pp(TRUE)
       
  3209     }
       
  3210     field(LOW, DBF_DOUBLE) {
       
  3211         pp(TRUE)
       
  3212         promptgroup("70 - Alarm")
       
  3213         interest(1)
       
  3214         prompt("Low Alarm Limit")
       
  3215     }
       
  3216     field(HHSV, DBF_MENU) {
       
  3217         pp(TRUE)
       
  3218         prompt("Hihi Severity")
       
  3219         promptgroup("70 - Alarm")
       
  3220         interest(1)
       
  3221         menu(menuAlarmSevr)
       
  3222     }
       
  3223     field(LLSV, DBF_MENU) {
       
  3224         prompt("Lolo Severity")
       
  3225         interest(1)
       
  3226         promptgroup("70 - Alarm")
       
  3227         menu(menuAlarmSevr)
       
  3228         pp(TRUE)
       
  3229     }
       
  3230     field(HSV, DBF_MENU) {
       
  3231         prompt("High Severity")
       
  3232         promptgroup("70 - Alarm")
       
  3233         interest(1)
       
  3234         menu(menuAlarmSevr)
       
  3235         pp(TRUE)
       
  3236     }
       
  3237     field(LSV, DBF_MENU) {
       
  3238         menu(menuAlarmSevr)
       
  3239         promptgroup("70 - Alarm")
       
  3240         interest(1)
       
  3241         prompt("Low Severity")
       
  3242         pp(TRUE)
       
  3243     }
       
  3244     field(HYST, DBF_DOUBLE) {
       
  3245         interest(1)
       
  3246         promptgroup("70 - Alarm")
       
  3247         prompt("Alarm Deadband")
       
  3248     }
       
  3249     field(ADEL, DBF_DOUBLE) {
       
  3250         prompt("Archive Deadband")
       
  3251         interest(1)
       
  3252         promptgroup("80 - Display")
       
  3253     }
       
  3254     field(MDEL, DBF_DOUBLE) {
       
  3255         promptgroup("80 - Display")
       
  3256         interest(1)
       
  3257         prompt("Monitor Deadband")
       
  3258     }
       
  3259     field(A, DBF_DOUBLE) {
       
  3260         promptgroup("10 - Common")
       
  3261         prompt("Value of Input A")
       
  3262         pp(TRUE)
       
  3263     }
       
  3264     field(B, DBF_DOUBLE) {
       
  3265         promptgroup("10 - Common")
       
  3266         prompt("Value of Input B")
       
  3267         pp(TRUE)
       
  3268     }
       
  3269     field(C, DBF_DOUBLE) {
       
  3270         promptgroup("10 - Common")
       
  3271         prompt("Value of Input C")
       
  3272         pp(TRUE)
       
  3273     }
       
  3274     field(D, DBF_DOUBLE) {
       
  3275         pp(TRUE)
       
  3276         prompt("Value of Input D")
       
  3277         promptgroup("10 - Common")
       
  3278     }
       
  3279     field(E, DBF_DOUBLE) {
       
  3280         prompt("Value of Input E")
       
  3281         promptgroup("10 - Common")
       
  3282         pp(TRUE)
       
  3283     }
       
  3284     field(F, DBF_DOUBLE) {
       
  3285         promptgroup("10 - Common")
       
  3286         prompt("Value of Input F")
       
  3287         pp(TRUE)
       
  3288     }
       
  3289     field(G, DBF_DOUBLE) {
       
  3290         promptgroup("10 - Common")
       
  3291         prompt("Value of Input G")
       
  3292         pp(TRUE)
       
  3293     }
       
  3294     field(H, DBF_DOUBLE) {
       
  3295         promptgroup("10 - Common")
       
  3296         prompt("Value of Input H")
       
  3297         pp(TRUE)
       
  3298     }
       
  3299     field(I, DBF_DOUBLE) {
       
  3300         pp(TRUE)
       
  3301         prompt("Value of Input I")
       
  3302         promptgroup("10 - Common")
       
  3303     }
       
  3304     field(J, DBF_DOUBLE) {
       
  3305         promptgroup("10 - Common")
       
  3306         prompt("Value of Input J")
       
  3307         pp(TRUE)
       
  3308     }
       
  3309     field(K, DBF_DOUBLE) {
       
  3310         promptgroup("10 - Common")
       
  3311         prompt("Value of Input K")
       
  3312         pp(TRUE)
       
  3313     }
       
  3314     field(L, DBF_DOUBLE) {
       
  3315         prompt("Value of Input L")
       
  3316         promptgroup("10 - Common")
       
  3317         pp(TRUE)
       
  3318     }
       
  3319     field(STRS, DBF_NOACCESS) {
       
  3320         extra("char **strs")
       
  3321         size(4)
       
  3322         interest(4)
       
  3323         prompt("Array of string pointers")
       
  3324     }
       
  3325     field(AA, DBF_STRING) {
       
  3326         prompt("Value of string input AA")
       
  3327         interest(4)
       
  3328         promptgroup("10 - Common")
       
  3329         pp(TRUE)
       
  3330         size(40)
       
  3331     }
       
  3332     field(BB, DBF_STRING) {
       
  3333         promptgroup("10 - Common")
       
  3334         interest(4)
       
  3335         prompt("Value of string input BB")
       
  3336         size(40)
       
  3337         pp(TRUE)
       
  3338     }
       
  3339     field(CC, DBF_STRING) {
       
  3340         pp(TRUE)
       
  3341         size(40)
       
  3342         prompt("Value of string input CC")
       
  3343         interest(4)
       
  3344         promptgroup("10 - Common")
       
  3345     }
       
  3346     field(DD, DBF_STRING) {
       
  3347         pp(TRUE)
       
  3348         size(40)
       
  3349         prompt("Value of string input DD")
       
  3350         promptgroup("10 - Common")
       
  3351         interest(4)
       
  3352     }
       
  3353     field(EE, DBF_STRING) {
       
  3354         prompt("Value of string input EE")
       
  3355         promptgroup("10 - Common")
       
  3356         interest(4)
       
  3357         pp(TRUE)
       
  3358         size(40)
       
  3359     }
       
  3360     field(FF, DBF_STRING) {
       
  3361         prompt("Value of string input FF")
       
  3362         promptgroup("10 - Common")
       
  3363         interest(4)
       
  3364         pp(TRUE)
       
  3365         size(40)
       
  3366     }
       
  3367     field(GG, DBF_STRING) {
       
  3368         size(40)
       
  3369         pp(TRUE)
       
  3370         interest(4)
       
  3371         promptgroup("10 - Common")
       
  3372         prompt("Value of string input GG")
       
  3373     }
       
  3374     field(HH, DBF_STRING) {
       
  3375         interest(4)
       
  3376         promptgroup("10 - Common")
       
  3377         prompt("Value of string input HH")
       
  3378         size(40)
       
  3379         pp(TRUE)
       
  3380     }
       
  3381     field(II, DBF_STRING) {
       
  3382         promptgroup("10 - Common")
       
  3383         interest(4)
       
  3384         prompt("Value of string input II")
       
  3385         size(40)
       
  3386         pp(TRUE)
       
  3387     }
       
  3388     field(JJ, DBF_STRING) {
       
  3389         pp(TRUE)
       
  3390         size(40)
       
  3391         promptgroup("10 - Common")
       
  3392         interest(4)
       
  3393         prompt("Value of string input JJ")
       
  3394     }
       
  3395     field(KK, DBF_STRING) {
       
  3396         prompt("Value of string input KK")
       
  3397         interest(4)
       
  3398         promptgroup("10 - Common")
       
  3399         size(40)
       
  3400         pp(TRUE)
       
  3401     }
       
  3402     field(LL, DBF_STRING) {
       
  3403         promptgroup("10 - Common")
       
  3404         interest(4)
       
  3405         prompt("Value of string input LL")
       
  3406         size(40)
       
  3407         pp(TRUE)
       
  3408     }
       
  3409     field(PAA, DBF_NOACCESS) {
       
  3410         size(4)
       
  3411         extra("char *paa")
       
  3412         prompt("Prev Value of AA")
       
  3413         interest(4)
       
  3414         special(SPC_DBADDR)
       
  3415     }
       
  3416     field(PBB, DBF_NOACCESS) {
       
  3417         special(SPC_DBADDR)
       
  3418         interest(4)
       
  3419         prompt("Prev Value of BB")
       
  3420         extra("char *pbb")
       
  3421         size(4)
       
  3422     }
       
  3423     field(PCC, DBF_NOACCESS) {
       
  3424         interest(4)
       
  3425         special(SPC_DBADDR)
       
  3426         prompt("Prev Value of CC")
       
  3427         extra("char *pcc")
       
  3428         size(4)
       
  3429     }
       
  3430     field(PDD, DBF_NOACCESS) {
       
  3431         extra("char *pdd")
       
  3432         size(4)
       
  3433         special(SPC_DBADDR)
       
  3434         interest(4)
       
  3435         prompt("Prev Value of DD")
       
  3436     }
       
  3437     field(PEE, DBF_NOACCESS) {
       
  3438         interest(4)
       
  3439         special(SPC_DBADDR)
       
  3440         prompt("Prev Value of EE")
       
  3441         extra("char *pee")
       
  3442         size(4)
       
  3443     }
       
  3444     field(PFF, DBF_NOACCESS) {
       
  3445         size(4)
       
  3446         extra("char *pff")
       
  3447         prompt("Prev Value of FF")
       
  3448         interest(4)
       
  3449         special(SPC_DBADDR)
       
  3450     }
       
  3451     field(PGG, DBF_NOACCESS) {
       
  3452         extra("char *pgg")
       
  3453         size(4)
       
  3454         special(SPC_DBADDR)
       
  3455         interest(4)
       
  3456         prompt("Prev Value of GG")
       
  3457     }
       
  3458     field(PHH, DBF_NOACCESS) {
       
  3459         interest(4)
       
  3460         special(SPC_DBADDR)
       
  3461         prompt("Prev Value of HH")
       
  3462         extra("char *phh")
       
  3463         size(4)
       
  3464     }
       
  3465     field(PII, DBF_NOACCESS) {
       
  3466         special(SPC_DBADDR)
       
  3467         interest(4)
       
  3468         prompt("Prev Value of II")
       
  3469         extra("char *pii")
       
  3470         size(4)
       
  3471     }
       
  3472     field(PJJ, DBF_NOACCESS) {
       
  3473         prompt("Prev Value of JJ")
       
  3474         interest(4)
       
  3475         special(SPC_DBADDR)
       
  3476         size(4)
       
  3477         extra("char *pjj")
       
  3478     }
       
  3479     field(PKK, DBF_NOACCESS) {
       
  3480         extra("char *pkk")
       
  3481         size(4)
       
  3482         special(SPC_DBADDR)
       
  3483         interest(4)
       
  3484         prompt("Prev Value of KK")
       
  3485     }
       
  3486     field(PLL, DBF_NOACCESS) {
       
  3487         size(4)
       
  3488         extra("char *pll")
       
  3489         prompt("Prev Value of LL")
       
  3490         interest(4)
       
  3491         special(SPC_DBADDR)
       
  3492     }
       
  3493     field(OVAL, DBF_DOUBLE) {
       
  3494         prompt("Output Value")
       
  3495         asl(ASL0)
       
  3496     }
       
  3497     field(OSV, DBF_STRING) {
       
  3498         prompt("Output string value")
       
  3499         asl(ASL0)
       
  3500         size(40)
       
  3501     }
       
  3502     field(POSV, DBF_STRING) {
       
  3503         special(SPC_NOMOD)
       
  3504         prompt("Previous output string value")
       
  3505         size(40)
       
  3506     }
       
  3507     field(PA, DBF_DOUBLE) {
       
  3508         interest(3)
       
  3509         special(SPC_NOMOD)
       
  3510         prompt("Prev Value of A")
       
  3511     }
       
  3512     field(PB, DBF_DOUBLE) {
       
  3513         prompt("Prev Value of B")
       
  3514         interest(3)
       
  3515         special(SPC_NOMOD)
       
  3516     }
       
  3517     field(PC, DBF_DOUBLE) {
       
  3518         special(SPC_NOMOD)
       
  3519         interest(3)
       
  3520         prompt("Prev Value of C")
       
  3521     }
       
  3522     field(PD, DBF_DOUBLE) {
       
  3523         special(SPC_NOMOD)
       
  3524         interest(3)
       
  3525         prompt("Prev Value of D")
       
  3526     }
       
  3527     field(PE, DBF_DOUBLE) {
       
  3528         interest(3)
       
  3529         special(SPC_NOMOD)
       
  3530         prompt("Prev Value of E")
       
  3531     }
       
  3532     field(PF, DBF_DOUBLE) {
       
  3533         interest(3)
       
  3534         special(SPC_NOMOD)
       
  3535         prompt("Prev Value of F")
       
  3536     }
       
  3537     field(PG, DBF_DOUBLE) {
       
  3538         prompt("Prev Value of G")
       
  3539         special(SPC_NOMOD)
       
  3540         interest(3)
       
  3541     }
       
  3542     field(PH, DBF_DOUBLE) {
       
  3543         interest(3)
       
  3544         special(SPC_NOMOD)
       
  3545         prompt("Prev Value of H")
       
  3546     }
       
  3547     field(PI, DBF_DOUBLE) {
       
  3548         prompt("Prev Value of I")
       
  3549         interest(3)
       
  3550         special(SPC_NOMOD)
       
  3551     }
       
  3552     field(PJ, DBF_DOUBLE) {
       
  3553         interest(3)
       
  3554         special(SPC_NOMOD)
       
  3555         prompt("Prev Value of J")
       
  3556     }
       
  3557     field(PK, DBF_DOUBLE) {
       
  3558         special(SPC_NOMOD)
       
  3559         interest(3)
       
  3560         prompt("Prev Value of K")
       
  3561     }
       
  3562     field(PL, DBF_DOUBLE) {
       
  3563         special(SPC_NOMOD)
       
  3564         interest(3)
       
  3565         prompt("Prev Value of L")
       
  3566     }
       
  3567     field(POVL, DBF_DOUBLE) {
       
  3568         prompt("Prev Value of OVAL")
       
  3569         asl(ASL0)
       
  3570     }
       
  3571     field(LALM, DBF_DOUBLE) {
       
  3572         prompt("Last Value Alarmed")
       
  3573         special(SPC_NOMOD)
       
  3574         interest(3)
       
  3575     }
       
  3576     field(ALST, DBF_DOUBLE) {
       
  3577         prompt("Last Value Archived")
       
  3578         interest(3)
       
  3579         special(SPC_NOMOD)
       
  3580     }
       
  3581     field(MLST, DBF_DOUBLE) {
       
  3582         interest(3)
       
  3583         special(SPC_NOMOD)
       
  3584         prompt("Last Val Monitored")
       
  3585     }
       
  3586     field(RPCL, DBF_NOACCESS) {
       
  3587         prompt("Postfix Calc")
       
  3588         special(SPC_NOMOD)
       
  3589         interest(4)
       
  3590         extra("unsigned char rpcl[282]")
       
  3591     }
       
  3592     field(ORPC, DBF_NOACCESS) {
       
  3593         extra("unsigned char orpc[282]")
       
  3594         special(SPC_NOMOD)
       
  3595         interest(4)
       
  3596         prompt("Postfix OCalc")
       
  3597     }
       
  3598 }
       
  3599 device(scalcout, CONSTANT, devsCalcoutSoft, "Soft Channel")
       
  3600 device(scalcout, INST_IO, devscalcoutStream, "stream")
       
  3601 recordtype(acalcout) {
       
  3602     %#include "epicsTypes.h"
       
  3603     %#include "link.h"
       
  3604     %#include "epicsMutex.h"
       
  3605     %#include "ellLib.h"
       
  3606     %#include "epicsTime.h"
       
  3607     field(NAME, DBF_STRING) {
       
  3608         prompt("Record Name")
       
  3609         special(SPC_NOMOD)
       
  3610         size(61)
       
  3611     }
       
  3612     field(DESC, DBF_STRING) {
       
  3613         size(41)
       
  3614         prompt("Descriptor")
       
  3615         promptgroup("10 - Common")
       
  3616     }
       
  3617     field(ASG, DBF_STRING) {
       
  3618         prompt("Access Security Group")
       
  3619         special(SPC_AS)
       
  3620         promptgroup("10 - Common")
       
  3621         size(29)
       
  3622     }
       
  3623     field(SCAN, DBF_MENU) {
       
  3624         menu(menuScan)
       
  3625         prompt("Scan Mechanism")
       
  3626         promptgroup("20 - Scan")
       
  3627         interest(1)
       
  3628         special(SPC_SCAN)
       
  3629     }
       
  3630     field(PINI, DBF_MENU) {
       
  3631         prompt("Process at iocInit")
       
  3632         interest(1)
       
  3633         promptgroup("20 - Scan")
       
  3634         menu(menuPini)
       
  3635     }
       
  3636     field(PHAS, DBF_SHORT) {
       
  3637         special(SPC_SCAN)
       
  3638         interest(1)
       
  3639         promptgroup("20 - Scan")
       
  3640         prompt("Scan Phase")
       
  3641     }
       
  3642     field(EVNT, DBF_STRING) {
       
  3643         prompt("Event Name")
       
  3644         interest(1)
       
  3645         promptgroup("20 - Scan")
       
  3646         special(SPC_SCAN)
       
  3647         size(40)
       
  3648     }
       
  3649     field(TSE, DBF_SHORT) {
       
  3650         interest(1)
       
  3651         promptgroup("20 - Scan")
       
  3652         prompt("Time Stamp Event")
       
  3653     }
       
  3654     field(TSEL, DBF_INLINK) {
       
  3655         prompt("Time Stamp Link")
       
  3656         interest(1)
       
  3657         promptgroup("20 - Scan")
       
  3658     }
       
  3659     field(DTYP, DBF_DEVICE) {
       
  3660         prompt("Device Type")
       
  3661         promptgroup("10 - Common")
       
  3662         interest(1)
       
  3663     }
       
  3664     field(DISV, DBF_SHORT) {
       
  3665         promptgroup("20 - Scan")
       
  3666         prompt("Disable Value")
       
  3667         initial("1")
       
  3668     }
       
  3669     field(DISA, DBF_SHORT) {
       
  3670         prompt("Disable")
       
  3671     }
       
  3672     field(SDIS, DBF_INLINK) {
       
  3673         interest(1)
       
  3674         promptgroup("20 - Scan")
       
  3675         prompt("Scanning Disable")
       
  3676     }
       
  3677     field(MLOK, DBF_NOACCESS) {
       
  3678         extra("epicsMutexId        mlok")
       
  3679         prompt("Monitor lock")
       
  3680         interest(4)
       
  3681         special(SPC_NOMOD)
       
  3682     }
       
  3683     field(MLIS, DBF_NOACCESS) {
       
  3684         extra("ELLLIST             mlis")
       
  3685         interest(4)
       
  3686         special(SPC_NOMOD)
       
  3687         prompt("Monitor List")
       
  3688     }
       
  3689     field(BKLNK, DBF_NOACCESS) {
       
  3690         extra("ELLLIST             bklnk")
       
  3691         prompt("Backwards link tracking")
       
  3692         interest(4)
       
  3693         special(SPC_NOMOD)
       
  3694     }
       
  3695     field(DISP, DBF_UCHAR) {
       
  3696         prompt("Disable putField")
       
  3697     }
       
  3698     field(PROC, DBF_UCHAR) {
       
  3699         prompt("Force Processing")
       
  3700         interest(3)
       
  3701         pp(TRUE)
       
  3702     }
       
  3703     field(STAT, DBF_MENU) {
       
  3704         prompt("Alarm Status")
       
  3705         special(SPC_NOMOD)
       
  3706         menu(menuAlarmStat)
       
  3707         initial("UDF")
       
  3708     }
       
  3709     field(SEVR, DBF_MENU) {
       
  3710         menu(menuAlarmSevr)
       
  3711         special(SPC_NOMOD)
       
  3712         prompt("Alarm Severity")
       
  3713     }
       
  3714     field(NSTA, DBF_MENU) {
       
  3715         prompt("New Alarm Status")
       
  3716         special(SPC_NOMOD)
       
  3717         interest(2)
       
  3718         menu(menuAlarmStat)
       
  3719     }
       
  3720     field(NSEV, DBF_MENU) {
       
  3721         menu(menuAlarmSevr)
       
  3722         prompt("New Alarm Severity")
       
  3723         interest(2)
       
  3724         special(SPC_NOMOD)
       
  3725     }
       
  3726     field(ACKS, DBF_MENU) {
       
  3727         menu(menuAlarmSevr)
       
  3728         prompt("Alarm Ack Severity")
       
  3729         special(SPC_NOMOD)
       
  3730         interest(2)
       
  3731     }
       
  3732     field(ACKT, DBF_MENU) {
       
  3733         promptgroup("70 - Alarm")
       
  3734         interest(2)
       
  3735         special(SPC_NOMOD)
       
  3736         prompt("Alarm Ack Transient")
       
  3737         menu(menuYesNo)
       
  3738         initial("YES")
       
  3739     }
       
  3740     field(DISS, DBF_MENU) {
       
  3741         menu(menuAlarmSevr)
       
  3742         interest(1)
       
  3743         promptgroup("70 - Alarm")
       
  3744         prompt("Disable Alarm Sevrty")
       
  3745     }
       
  3746     field(LCNT, DBF_UCHAR) {
       
  3747         prompt("Lock Count")
       
  3748         interest(2)
       
  3749         special(SPC_NOMOD)
       
  3750     }
       
  3751     field(PACT, DBF_UCHAR) {
       
  3752         interest(1)
       
  3753         special(SPC_NOMOD)
       
  3754         prompt("Record active")
       
  3755     }
       
  3756     field(PUTF, DBF_UCHAR) {
       
  3757         prompt("dbPutField process")
       
  3758         special(SPC_NOMOD)
       
  3759         interest(1)
       
  3760     }
       
  3761     field(RPRO, DBF_UCHAR) {
       
  3762         prompt("Reprocess ")
       
  3763         interest(1)
       
  3764         special(SPC_NOMOD)
       
  3765     }
       
  3766     field(ASP, DBF_NOACCESS) {
       
  3767         interest(4)
       
  3768         special(SPC_NOMOD)
       
  3769         prompt("Access Security Pvt")
       
  3770         extra("struct asgMember    *asp")
       
  3771     }
       
  3772     field(PPN, DBF_NOACCESS) {
       
  3773         extra("struct processNotify *ppn")
       
  3774         interest(4)
       
  3775         special(SPC_NOMOD)
       
  3776         prompt("pprocessNotify")
       
  3777     }
       
  3778     field(PPNR, DBF_NOACCESS) {
       
  3779         extra("struct processNotifyRecord *ppnr")
       
  3780         special(SPC_NOMOD)
       
  3781         interest(4)
       
  3782         prompt("pprocessNotifyRecord")
       
  3783     }
       
  3784     field(SPVT, DBF_NOACCESS) {
       
  3785         special(SPC_NOMOD)
       
  3786         interest(4)
       
  3787         prompt("Scan Private")
       
  3788         extra("struct scan_element *spvt")
       
  3789     }
       
  3790     field(RSET, DBF_NOACCESS) {
       
  3791         extra("struct typed_rset   *rset")
       
  3792         prompt("Address of RSET")
       
  3793         special(SPC_NOMOD)
       
  3794         interest(4)
       
  3795     }
       
  3796     field(DSET, DBF_NOACCESS) {
       
  3797         interest(4)
       
  3798         special(SPC_NOMOD)
       
  3799         prompt("DSET address")
       
  3800         extra("struct dset         *dset")
       
  3801     }
       
  3802     field(DPVT, DBF_NOACCESS) {
       
  3803         special(SPC_NOMOD)
       
  3804         interest(4)
       
  3805         prompt("Device Private")
       
  3806         extra("void                *dpvt")
       
  3807     }
       
  3808     field(RDES, DBF_NOACCESS) {
       
  3809         extra("struct dbRecordType *rdes")
       
  3810         interest(4)
       
  3811         special(SPC_NOMOD)
       
  3812         prompt("Address of dbRecordType")
       
  3813     }
       
  3814     field(LSET, DBF_NOACCESS) {
       
  3815         extra("struct lockRecord   *lset")
       
  3816         special(SPC_NOMOD)
       
  3817         interest(4)
       
  3818         prompt("Lock Set")
       
  3819     }
       
  3820     field(PRIO, DBF_MENU) {
       
  3821         special(SPC_SCAN)
       
  3822         interest(1)
       
  3823         promptgroup("20 - Scan")
       
  3824         prompt("Scheduling Priority")
       
  3825         menu(menuPriority)
       
  3826     }
       
  3827     field(TPRO, DBF_UCHAR) {
       
  3828         prompt("Trace Processing")
       
  3829     }
       
  3830     field(BKPT, DBF_NOACCESS) {
       
  3831         interest(1)
       
  3832         special(SPC_NOMOD)
       
  3833         prompt("Break Point")
       
  3834         extra("char                bkpt")
       
  3835     }
       
  3836     field(UDF, DBF_UCHAR) {
       
  3837         interest(1)
       
  3838         promptgroup("10 - Common")
       
  3839         prompt("Undefined")
       
  3840         pp(TRUE)
       
  3841         initial("1")
       
  3842     }
       
  3843     field(UDFS, DBF_MENU) {
       
  3844         prompt("Undefined Alarm Sevrty")
       
  3845         promptgroup("70 - Alarm")
       
  3846         interest(1)
       
  3847         menu(menuAlarmSevr)
       
  3848         initial("INVALID")
       
  3849     }
       
  3850     field(TIME, DBF_NOACCESS) {
       
  3851         extra("epicsTimeStamp      time")
       
  3852         interest(2)
       
  3853         special(SPC_NOMOD)
       
  3854         prompt("Time")
       
  3855     }
       
  3856     field(FLNK, DBF_FWDLINK) {
       
  3857         promptgroup("20 - Scan")
       
  3858         interest(1)
       
  3859         prompt("Forward Process Link")
       
  3860     }
       
  3861     field(VERS, DBF_DOUBLE) {
       
  3862         initial("1")
       
  3863         special(SPC_NOMOD)
       
  3864         prompt("Code Version")
       
  3865     }
       
  3866     field(RPVT, DBF_NOACCESS) {
       
  3867         size(4)
       
  3868         extra("void *rpvt")
       
  3869         prompt("Record Private")
       
  3870         special(SPC_NOMOD)
       
  3871         interest(4)
       
  3872     }
       
  3873     field(VAL, DBF_DOUBLE) {
       
  3874         asl(ASL0)
       
  3875         prompt("Result")
       
  3876     }
       
  3877     field(AVAL, DBF_NOACCESS) {
       
  3878         pp(TRUE)
       
  3879         extra("double *aval")
       
  3880         asl(ASL0)
       
  3881         prompt("Array Value")
       
  3882         special(SPC_DBADDR)
       
  3883     }
       
  3884     field(NELM, DBF_ULONG) {
       
  3885         prompt("Number of Elements")
       
  3886         interest(1)
       
  3887         special(SPC_NOMOD)
       
  3888         promptgroup("30 - Action")
       
  3889         initial("1")
       
  3890     }
       
  3891     field(NUSE, DBF_ULONG) {
       
  3892         pp(TRUE)
       
  3893         initial("0")
       
  3894         interest(1)
       
  3895         special(SPC_MOD)
       
  3896         promptgroup("30 - Action")
       
  3897         prompt("# elem's in use")
       
  3898     }
       
  3899     field(PVAL, DBF_DOUBLE) {
       
  3900         prompt("Previous Value")
       
  3901     }
       
  3902     field(PAVL, DBF_NOACCESS) {
       
  3903         prompt("Prev. Array Value")
       
  3904         asl(ASL0)
       
  3905         extra("double *pavl")
       
  3906         pp(TRUE)
       
  3907     }
       
  3908     field(CALC, DBF_STRING) {
       
  3909         pp(TRUE)
       
  3910         size(80)
       
  3911         promptgroup("30 - Action")
       
  3912         special(SPC_MOD)
       
  3913         prompt("Calculation")
       
  3914     }
       
  3915     field(CLCV, DBF_LONG) {
       
  3916         prompt("CALC Valid")
       
  3917         interest(1)
       
  3918     }
       
  3919     field(INPA, DBF_INLINK) {
       
  3920         prompt("Input A")
       
  3921         promptgroup("30 - Action")
       
  3922         interest(1)
       
  3923         special(SPC_MOD)
       
  3924     }
       
  3925     field(INPB, DBF_INLINK) {
       
  3926         interest(1)
       
  3927         special(SPC_MOD)
       
  3928         promptgroup("30 - Action")
       
  3929         prompt("Input B")
       
  3930     }
       
  3931     field(INPC, DBF_INLINK) {
       
  3932         interest(1)
       
  3933         promptgroup("30 - Action")
       
  3934         special(SPC_MOD)
       
  3935         prompt("Input C")
       
  3936     }
       
  3937     field(INPD, DBF_INLINK) {
       
  3938         prompt("Input D")
       
  3939         promptgroup("30 - Action")
       
  3940         interest(1)
       
  3941         special(SPC_MOD)
       
  3942     }
       
  3943     field(INPE, DBF_INLINK) {
       
  3944         special(SPC_MOD)
       
  3945         interest(1)
       
  3946         promptgroup("30 - Action")
       
  3947         prompt("Input E")
       
  3948     }
       
  3949     field(INPF, DBF_INLINK) {
       
  3950         interest(1)
       
  3951         special(SPC_MOD)
       
  3952         promptgroup("30 - Action")
       
  3953         prompt("Input F")
       
  3954     }
       
  3955     field(INPG, DBF_INLINK) {
       
  3956         prompt("Input G")
       
  3957         interest(1)
       
  3958         special(SPC_MOD)
       
  3959         promptgroup("30 - Action")
       
  3960     }
       
  3961     field(INPH, DBF_INLINK) {
       
  3962         interest(1)
       
  3963         special(SPC_MOD)
       
  3964         promptgroup("30 - Action")
       
  3965         prompt("Input H")
       
  3966     }
       
  3967     field(INPI, DBF_INLINK) {
       
  3968         interest(1)
       
  3969         special(SPC_MOD)
       
  3970         promptgroup("30 - Action")
       
  3971         prompt("Input I")
       
  3972     }
       
  3973     field(INPJ, DBF_INLINK) {
       
  3974         interest(1)
       
  3975         special(SPC_MOD)
       
  3976         promptgroup("30 - Action")
       
  3977         prompt("Input J")
       
  3978     }
       
  3979     field(INPK, DBF_INLINK) {
       
  3980         promptgroup("30 - Action")
       
  3981         interest(1)
       
  3982         special(SPC_MOD)
       
  3983         prompt("Input K")
       
  3984     }
       
  3985     field(INPL, DBF_INLINK) {
       
  3986         prompt("Input L")
       
  3987         promptgroup("30 - Action")
       
  3988         interest(1)
       
  3989         special(SPC_MOD)
       
  3990     }
       
  3991     field(INAA, DBF_INLINK) {
       
  3992         interest(1)
       
  3993         special(SPC_MOD)
       
  3994         promptgroup("30 - Action")
       
  3995         prompt("Array input AA")
       
  3996     }
       
  3997     field(INBB, DBF_INLINK) {
       
  3998         special(SPC_MOD)
       
  3999         interest(1)
       
  4000         promptgroup("30 - Action")
       
  4001         prompt("Array input BB")
       
  4002     }
       
  4003     field(INCC, DBF_INLINK) {
       
  4004         prompt("Array input CC")
       
  4005         interest(1)
       
  4006         special(SPC_MOD)
       
  4007         promptgroup("30 - Action")
       
  4008     }
       
  4009     field(INDD, DBF_INLINK) {
       
  4010         prompt("Array input DD")
       
  4011         promptgroup("30 - Action")
       
  4012         interest(1)
       
  4013         special(SPC_MOD)
       
  4014     }
       
  4015     field(INEE, DBF_INLINK) {
       
  4016         interest(1)
       
  4017         special(SPC_MOD)
       
  4018         promptgroup("30 - Action")
       
  4019         prompt("Array input EE")
       
  4020     }
       
  4021     field(INFF, DBF_INLINK) {
       
  4022         interest(1)
       
  4023         special(SPC_MOD)
       
  4024         promptgroup("30 - Action")
       
  4025         prompt("Array input FF")
       
  4026     }
       
  4027     field(INGG, DBF_INLINK) {
       
  4028         special(SPC_MOD)
       
  4029         interest(1)
       
  4030         promptgroup("30 - Action")
       
  4031         prompt("Array input GG")
       
  4032     }
       
  4033     field(INHH, DBF_INLINK) {
       
  4034         special(SPC_MOD)
       
  4035         interest(1)
       
  4036         promptgroup("30 - Action")
       
  4037         prompt("Array input HH")
       
  4038     }
       
  4039     field(INII, DBF_INLINK) {
       
  4040         prompt("Array input II")
       
  4041         interest(1)
       
  4042         special(SPC_MOD)
       
  4043         promptgroup("30 - Action")
       
  4044     }
       
  4045     field(INJJ, DBF_INLINK) {
       
  4046         special(SPC_MOD)
       
  4047         interest(1)
       
  4048         promptgroup("30 - Action")
       
  4049         prompt("Array input JJ")
       
  4050     }
       
  4051     field(INKK, DBF_INLINK) {
       
  4052         prompt("Array input KK")
       
  4053         interest(1)
       
  4054         special(SPC_MOD)
       
  4055         promptgroup("30 - Action")
       
  4056     }
       
  4057     field(INLL, DBF_INLINK) {
       
  4058         prompt("Array input LL")
       
  4059         interest(1)
       
  4060         special(SPC_MOD)
       
  4061         promptgroup("30 - Action")
       
  4062     }
       
  4063     field(OUT, DBF_OUTLINK) {
       
  4064         prompt("Output Link")
       
  4065         interest(1)
       
  4066         special(SPC_MOD)
       
  4067         promptgroup("50 - Output")
       
  4068     }
       
  4069     field(INAV, DBF_MENU) {
       
  4070         initial("1")
       
  4071         interest(1)
       
  4072         special(SPC_NOMOD)
       
  4073         prompt("INPA PV Status")
       
  4074         menu(acalcoutINAV)
       
  4075     }
       
  4076     field(INBV, DBF_MENU) {
       
  4077         menu(acalcoutINAV)
       
  4078         interest(1)
       
  4079         special(SPC_NOMOD)
       
  4080         prompt("INPB PV Status")
       
  4081         initial("1")
       
  4082     }
       
  4083     field(INCV, DBF_MENU) {
       
  4084         initial("1")
       
  4085         prompt("INPC PV Status")
       
  4086         special(SPC_NOMOD)
       
  4087         interest(1)
       
  4088         menu(acalcoutINAV)
       
  4089     }
       
  4090     field(INDV, DBF_MENU) {
       
  4091         menu(acalcoutINAV)
       
  4092         interest(1)
       
  4093         special(SPC_NOMOD)
       
  4094         prompt("INPD PV Status")
       
  4095         initial("1")
       
  4096     }
       
  4097     field(INEV, DBF_MENU) {
       
  4098         initial("1")
       
  4099         menu(acalcoutINAV)
       
  4100         prompt("INPE PV Status")
       
  4101         special(SPC_NOMOD)
       
  4102         interest(1)
       
  4103     }
       
  4104     field(INFV, DBF_MENU) {
       
  4105         initial("1")
       
  4106         menu(acalcoutINAV)
       
  4107         prompt("INPF PV Status")
       
  4108         interest(1)
       
  4109         special(SPC_NOMOD)
       
  4110     }
       
  4111     field(INGV, DBF_MENU) {
       
  4112         menu(acalcoutINAV)
       
  4113         prompt("INPG PV Status")
       
  4114         special(SPC_NOMOD)
       
  4115         interest(1)
       
  4116         initial("1")
       
  4117     }
       
  4118     field(INHV, DBF_MENU) {
       
  4119         interest(1)
       
  4120         special(SPC_NOMOD)
       
  4121         prompt("INPH PV Status")
       
  4122         menu(acalcoutINAV)
       
  4123         initial("1")
       
  4124     }
       
  4125     field(INIV, DBF_MENU) {
       
  4126         initial("1")
       
  4127         menu(acalcoutINAV)
       
  4128         interest(1)
       
  4129         special(SPC_NOMOD)
       
  4130         prompt("INPI PV Status")
       
  4131     }
       
  4132     field(INJV, DBF_MENU) {
       
  4133         initial("1")
       
  4134         special(SPC_NOMOD)
       
  4135         interest(1)
       
  4136         prompt("INPJ PV Status")
       
  4137         menu(acalcoutINAV)
       
  4138     }
       
  4139     field(INKV, DBF_MENU) {
       
  4140         initial("1")
       
  4141         special(SPC_NOMOD)
       
  4142         interest(1)
       
  4143         prompt("INPK PV Status")
       
  4144         menu(acalcoutINAV)
       
  4145     }
       
  4146     field(INLV, DBF_MENU) {
       
  4147         interest(1)
       
  4148         special(SPC_NOMOD)
       
  4149         prompt("INPL PV Status")
       
  4150         menu(acalcoutINAV)
       
  4151         initial("1")
       
  4152     }
       
  4153     field(IAAV, DBF_MENU) {
       
  4154         menu(acalcoutINAV)
       
  4155         interest(1)
       
  4156         special(SPC_NOMOD)
       
  4157         prompt("INAA PV Status")
       
  4158         initial("1")
       
  4159     }
       
  4160     field(IBBV, DBF_MENU) {
       
  4161         interest(1)
       
  4162         special(SPC_NOMOD)
       
  4163         prompt("INBB PV Status")
       
  4164         menu(acalcoutINAV)
       
  4165         initial("1")
       
  4166     }
       
  4167     field(ICCV, DBF_MENU) {
       
  4168         initial("1")
       
  4169         special(SPC_NOMOD)
       
  4170         interest(1)
       
  4171         prompt("INCC PV Status")
       
  4172         menu(acalcoutINAV)
       
  4173     }
       
  4174     field(IDDV, DBF_MENU) {
       
  4175         initial("1")
       
  4176         prompt("INDD PV Status")
       
  4177         special(SPC_NOMOD)
       
  4178         interest(1)
       
  4179         menu(acalcoutINAV)
       
  4180     }
       
  4181     field(IEEV, DBF_MENU) {
       
  4182         menu(acalcoutINAV)
       
  4183         prompt("INEE PV Status")
       
  4184         interest(1)
       
  4185         special(SPC_NOMOD)
       
  4186         initial("1")
       
  4187     }
       
  4188     field(IFFV, DBF_MENU) {
       
  4189         initial("1")
       
  4190         prompt("INFF PV Status")
       
  4191         special(SPC_NOMOD)
       
  4192         interest(1)
       
  4193         menu(acalcoutINAV)
       
  4194     }
       
  4195     field(IGGV, DBF_MENU) {
       
  4196         menu(acalcoutINAV)
       
  4197         prompt("INGG PV Status")
       
  4198         interest(1)
       
  4199         special(SPC_NOMOD)
       
  4200         initial("1")
       
  4201     }
       
  4202     field(IHHV, DBF_MENU) {
       
  4203         initial("1")
       
  4204         prompt("INHH PV Status")
       
  4205         interest(1)
       
  4206         special(SPC_NOMOD)
       
  4207         menu(acalcoutINAV)
       
  4208     }
       
  4209     field(IIIV, DBF_MENU) {
       
  4210         initial("1")
       
  4211         menu(acalcoutINAV)
       
  4212         prompt("INII PV Status")
       
  4213         interest(1)
       
  4214         special(SPC_NOMOD)
       
  4215     }
       
  4216     field(IJJV, DBF_MENU) {
       
  4217         initial("1")
       
  4218         prompt("INJJ PV Status")
       
  4219         interest(1)
       
  4220         special(SPC_NOMOD)
       
  4221         menu(acalcoutINAV)
       
  4222     }
       
  4223     field(IKKV, DBF_MENU) {
       
  4224         menu(acalcoutINAV)
       
  4225         prompt("INKK PV Status")
       
  4226         special(SPC_NOMOD)
       
  4227         interest(1)
       
  4228         initial("1")
       
  4229     }
       
  4230     field(ILLV, DBF_MENU) {
       
  4231         initial("1")
       
  4232         menu(acalcoutINAV)
       
  4233         interest(1)
       
  4234         special(SPC_NOMOD)
       
  4235         prompt("INLL PV Status")
       
  4236     }
       
  4237     field(OUTV, DBF_MENU) {
       
  4238         menu(acalcoutINAV)
       
  4239         prompt("OUT PV Status")
       
  4240         interest(1)
       
  4241         special(SPC_NOMOD)
       
  4242     }
       
  4243     field(OOPT, DBF_MENU) {
       
  4244         prompt("Output Execute Opt")
       
  4245         interest(1)
       
  4246         promptgroup("30 - Action")
       
  4247         menu(acalcoutOOPT)
       
  4248     }
       
  4249     field(ODLY, DBF_DOUBLE) {
       
  4250         interest(1)
       
  4251         promptgroup("70 - Alarm")
       
  4252         prompt("Output Execute Delay")
       
  4253         asl(ASL0)
       
  4254     }
       
  4255     field(WAIT, DBF_MENU) {
       
  4256         interest(1)
       
  4257         prompt("Wait for completion?")
       
  4258         menu(acalcoutWAIT)
       
  4259     }
       
  4260     field(DLYA, DBF_USHORT) {
       
  4261         asl(ASL0)
       
  4262         special(SPC_NOMOD)
       
  4263         prompt("Output Delay Active")
       
  4264     }
       
  4265     field(DOPT, DBF_MENU) {
       
  4266         menu(acalcoutDOPT)
       
  4267         prompt("Output Data Opt")
       
  4268         promptgroup("30 - Action")
       
  4269         interest(1)
       
  4270     }
       
  4271     field(OCAL, DBF_STRING) {
       
  4272         pp(TRUE)
       
  4273         size(80)
       
  4274         prompt("Output Calculation")
       
  4275         promptgroup("30 - Action")
       
  4276         special(SPC_MOD)
       
  4277     }
       
  4278     field(OCLV, DBF_LONG) {
       
  4279         prompt("OCAL Valid")
       
  4280         interest(1)
       
  4281     }
       
  4282     field(OEVT, DBF_USHORT) {
       
  4283         promptgroup("30 - Action")
       
  4284         prompt("Event To Issue")
       
  4285         asl(ASL0)
       
  4286     }
       
  4287     field(IVOA, DBF_MENU) {
       
  4288         prompt("INVALID output action")
       
  4289         interest(2)
       
  4290         promptgroup("50 - Output")
       
  4291         menu(menuIvoa)
       
  4292     }
       
  4293     field(IVOV, DBF_DOUBLE) {
       
  4294         promptgroup("50 - Output")
       
  4295         interest(2)
       
  4296         prompt("INVALID output value")
       
  4297     }
       
  4298     field(EGU, DBF_STRING) {
       
  4299         size(16)
       
  4300         interest(1)
       
  4301         promptgroup("80 - Display")
       
  4302         prompt("Units Name")
       
  4303     }
       
  4304     field(PREC, DBF_SHORT) {
       
  4305         prompt("Display Precision")
       
  4306         interest(1)
       
  4307         promptgroup("80 - Display")
       
  4308     }
       
  4309     field(HOPR, DBF_DOUBLE) {
       
  4310         prompt("High Operating Rng")
       
  4311         promptgroup("80 - Display")
       
  4312         interest(1)
       
  4313     }
       
  4314     field(LOPR, DBF_DOUBLE) {
       
  4315         interest(1)
       
  4316         promptgroup("80 - Display")
       
  4317         prompt("Low Operating Range")
       
  4318     }
       
  4319     field(HIHI, DBF_DOUBLE) {
       
  4320         pp(TRUE)
       
  4321         promptgroup("70 - Alarm")
       
  4322         interest(1)
       
  4323         prompt("Hihi Alarm Limit")
       
  4324     }
       
  4325     field(LOLO, DBF_DOUBLE) {
       
  4326         prompt("Lolo Alarm Limit")
       
  4327         promptgroup("70 - Alarm")
       
  4328         interest(1)
       
  4329         pp(TRUE)
       
  4330     }
       
  4331     field(HIGH, DBF_DOUBLE) {
       
  4332         promptgroup("70 - Alarm")
       
  4333         interest(1)
       
  4334         prompt("High Alarm Limit")
       
  4335         pp(TRUE)
       
  4336     }
       
  4337     field(LOW, DBF_DOUBLE) {
       
  4338         pp(TRUE)
       
  4339         promptgroup("70 - Alarm")
       
  4340         interest(1)
       
  4341         prompt("Low Alarm Limit")
       
  4342     }
       
  4343     field(HHSV, DBF_MENU) {
       
  4344         menu(menuAlarmSevr)
       
  4345         interest(1)
       
  4346         promptgroup("70 - Alarm")
       
  4347         prompt("Hihi Severity")
       
  4348         pp(TRUE)
       
  4349     }
       
  4350     field(LLSV, DBF_MENU) {
       
  4351         menu(menuAlarmSevr)
       
  4352         prompt("Lolo Severity")
       
  4353         interest(1)
       
  4354         promptgroup("70 - Alarm")
       
  4355         pp(TRUE)
       
  4356     }
       
  4357     field(HSV, DBF_MENU) {
       
  4358         menu(menuAlarmSevr)
       
  4359         interest(1)
       
  4360         promptgroup("70 - Alarm")
       
  4361         prompt("High Severity")
       
  4362         pp(TRUE)
       
  4363     }
       
  4364     field(LSV, DBF_MENU) {
       
  4365         menu(menuAlarmSevr)
       
  4366         promptgroup("70 - Alarm")
       
  4367         interest(1)
       
  4368         prompt("Low Severity")
       
  4369         pp(TRUE)
       
  4370     }
       
  4371     field(HYST, DBF_DOUBLE) {
       
  4372         prompt("Alarm Deadband")
       
  4373         promptgroup("70 - Alarm")
       
  4374         interest(1)
       
  4375     }
       
  4376     field(ADEL, DBF_DOUBLE) {
       
  4377         prompt("Archive Deadband")
       
  4378         interest(1)
       
  4379         promptgroup("80 - Display")
       
  4380     }
       
  4381     field(MDEL, DBF_DOUBLE) {
       
  4382         promptgroup("80 - Display")
       
  4383         interest(1)
       
  4384         prompt("Monitor Deadband")
       
  4385     }
       
  4386     field(A, DBF_DOUBLE) {
       
  4387         pp(TRUE)
       
  4388         prompt("Value of Input A")
       
  4389     }
       
  4390     field(B, DBF_DOUBLE) {
       
  4391         pp(TRUE)
       
  4392         prompt("Value of Input B")
       
  4393     }
       
  4394     field(C, DBF_DOUBLE) {
       
  4395         pp(TRUE)
       
  4396         prompt("Value of Input C")
       
  4397     }
       
  4398     field(D, DBF_DOUBLE) {
       
  4399         pp(TRUE)
       
  4400         prompt("Value of Input D")
       
  4401     }
       
  4402     field(E, DBF_DOUBLE) {
       
  4403         pp(TRUE)
       
  4404         prompt("Value of Input E")
       
  4405     }
       
  4406     field(F, DBF_DOUBLE) {
       
  4407         prompt("Value of Input F")
       
  4408         pp(TRUE)
       
  4409     }
       
  4410     field(G, DBF_DOUBLE) {
       
  4411         pp(TRUE)
       
  4412         prompt("Value of Input G")
       
  4413     }
       
  4414     field(H, DBF_DOUBLE) {
       
  4415         pp(TRUE)
       
  4416         prompt("Value of Input H")
       
  4417     }
       
  4418     field(I, DBF_DOUBLE) {
       
  4419         pp(TRUE)
       
  4420         prompt("Value of Input I")
       
  4421     }
       
  4422     field(J, DBF_DOUBLE) {
       
  4423         pp(TRUE)
       
  4424         prompt("Value of Input J")
       
  4425     }
       
  4426     field(K, DBF_DOUBLE) {
       
  4427         pp(TRUE)
       
  4428         prompt("Value of Input K")
       
  4429     }
       
  4430     field(L, DBF_DOUBLE) {
       
  4431         pp(TRUE)
       
  4432         prompt("Value of Input L")
       
  4433     }
       
  4434     field(AA, DBF_NOACCESS) {
       
  4435         pp(TRUE)
       
  4436         extra("double *aa")
       
  4437         prompt("Value of array input")
       
  4438         special(SPC_DBADDR)
       
  4439         asl(ASL0)
       
  4440     }
       
  4441     field(BB, DBF_NOACCESS) {
       
  4442         special(SPC_DBADDR)
       
  4443         prompt("Value of array input")
       
  4444         asl(ASL0)
       
  4445         extra("double *bb")
       
  4446         pp(TRUE)
       
  4447     }
       
  4448     field(CC, DBF_NOACCESS) {
       
  4449         extra("double *cc")
       
  4450         pp(TRUE)
       
  4451         asl(ASL0)
       
  4452         special(SPC_DBADDR)
       
  4453         prompt("Value of array input")
       
  4454     }
       
  4455     field(DD, DBF_NOACCESS) {
       
  4456         special(SPC_DBADDR)
       
  4457         prompt("Value of array input")
       
  4458         asl(ASL0)
       
  4459         extra("double *dd")
       
  4460         pp(TRUE)
       
  4461     }
       
  4462     field(EE, DBF_NOACCESS) {
       
  4463         special(SPC_DBADDR)
       
  4464         prompt("Value of array input")
       
  4465         asl(ASL0)
       
  4466         extra("double *ee")
       
  4467         pp(TRUE)
       
  4468     }
       
  4469     field(FF, DBF_NOACCESS) {
       
  4470         asl(ASL0)
       
  4471         prompt("Value of array input")
       
  4472         special(SPC_DBADDR)
       
  4473         pp(TRUE)
       
  4474         extra("double *ff")
       
  4475     }
       
  4476     field(GG, DBF_NOACCESS) {
       
  4477         prompt("Value of array input")
       
  4478         special(SPC_DBADDR)
       
  4479         asl(ASL0)
       
  4480         pp(TRUE)
       
  4481         extra("double *gg")
       
  4482     }
       
  4483     field(HH, DBF_NOACCESS) {
       
  4484         asl(ASL0)
       
  4485         prompt("Value of array input")
       
  4486         special(SPC_DBADDR)
       
  4487         pp(TRUE)
       
  4488         extra("double *hh")
       
  4489     }
       
  4490     field(II, DBF_NOACCESS) {
       
  4491         asl(ASL0)
       
  4492         special(SPC_DBADDR)
       
  4493         prompt("Value of array input")
       
  4494         extra("double *ii")
       
  4495         pp(TRUE)
       
  4496     }
       
  4497     field(JJ, DBF_NOACCESS) {
       
  4498         extra("double *jj")
       
  4499         pp(TRUE)
       
  4500         special(SPC_DBADDR)
       
  4501         prompt("Value of array input")
       
  4502         asl(ASL0)
       
  4503     }
       
  4504     field(KK, DBF_NOACCESS) {
       
  4505         extra("double *kk")
       
  4506         pp(TRUE)
       
  4507         asl(ASL0)
       
  4508         special(SPC_DBADDR)
       
  4509         prompt("Value of array input")
       
  4510     }
       
  4511     field(LL, DBF_NOACCESS) {
       
  4512         asl(ASL0)
       
  4513         special(SPC_DBADDR)
       
  4514         prompt("Value of array input")
       
  4515         extra("double *ll")
       
  4516         pp(TRUE)
       
  4517     }
       
  4518     field(PAA, DBF_NOACCESS) {
       
  4519         extra("double *paa")
       
  4520         prompt("Prev Val of array input")
       
  4521         asl(ASL0)
       
  4522     }
       
  4523     field(NEWM, DBF_ULONG) {
       
  4524         prompt("new array value mask")
       
  4525         special(SPC_NOMOD)
       
  4526         asl(ASL0)
       
  4527     }
       
  4528     field(OVAL, DBF_DOUBLE) {
       
  4529         prompt("Output Value")
       
  4530         asl(ASL0)
       
  4531     }
       
  4532     field(OAV, DBF_NOACCESS) {
       
  4533         pp(TRUE)
       
  4534         extra("double *oav")
       
  4535         asl(ASL0)
       
  4536         prompt("Output array value")
       
  4537         special(SPC_DBADDR)
       
  4538     }
       
  4539     field(POAV, DBF_NOACCESS) {
       
  4540         prompt("Output array value")
       
  4541         asl(ASL0)
       
  4542         pp(TRUE)
       
  4543         extra("double *poav")
       
  4544     }
       
  4545     field(PA, DBF_DOUBLE) {
       
  4546         prompt("Prev Value of A")
       
  4547         special(SPC_NOMOD)
       
  4548         interest(3)
       
  4549     }
       
  4550     field(PB, DBF_DOUBLE) {
       
  4551         special(SPC_NOMOD)
       
  4552         interest(3)
       
  4553         prompt("Prev Value of B")
       
  4554     }
       
  4555     field(PC, DBF_DOUBLE) {
       
  4556         special(SPC_NOMOD)
       
  4557         interest(3)
       
  4558         prompt("Prev Value of C")
       
  4559     }
       
  4560     field(PD, DBF_DOUBLE) {
       
  4561         prompt("Prev Value of D")
       
  4562         special(SPC_NOMOD)
       
  4563         interest(3)
       
  4564     }
       
  4565     field(PE, DBF_DOUBLE) {
       
  4566         interest(3)
       
  4567         special(SPC_NOMOD)
       
  4568         prompt("Prev Value of E")
       
  4569     }
       
  4570     field(PF, DBF_DOUBLE) {
       
  4571         prompt("Prev Value of F")
       
  4572         special(SPC_NOMOD)
       
  4573         interest(3)
       
  4574     }
       
  4575     field(PG, DBF_DOUBLE) {
       
  4576         prompt("Prev Value of G")
       
  4577         special(SPC_NOMOD)
       
  4578         interest(3)
       
  4579     }
       
  4580     field(PH, DBF_DOUBLE) {
       
  4581         prompt("Prev Value of H")
       
  4582         special(SPC_NOMOD)
       
  4583         interest(3)
       
  4584     }
       
  4585     field(PI, DBF_DOUBLE) {
       
  4586         prompt("Prev Value of I")
       
  4587         interest(3)
       
  4588         special(SPC_NOMOD)
       
  4589     }
       
  4590     field(PJ, DBF_DOUBLE) {
       
  4591         prompt("Prev Value of J")
       
  4592         special(SPC_NOMOD)
       
  4593         interest(3)
       
  4594     }
       
  4595     field(PK, DBF_DOUBLE) {
       
  4596         interest(3)
       
  4597         special(SPC_NOMOD)
       
  4598         prompt("Prev Value of K")
       
  4599     }
       
  4600     field(PL, DBF_DOUBLE) {
       
  4601         special(SPC_NOMOD)
       
  4602         interest(3)
       
  4603         prompt("Prev Value of L")
       
  4604     }
       
  4605     field(POVL, DBF_DOUBLE) {
       
  4606         asl(ASL0)
       
  4607         prompt("Prev Value of OVAL")
       
  4608     }
       
  4609     field(LALM, DBF_DOUBLE) {
       
  4610         prompt("Last Value Alarmed")
       
  4611         interest(3)
       
  4612         special(SPC_NOMOD)
       
  4613     }
       
  4614     field(ALST, DBF_DOUBLE) {
       
  4615         prompt("Last Value Archived")
       
  4616         interest(3)
       
  4617         special(SPC_NOMOD)
       
  4618     }
       
  4619     field(MLST, DBF_DOUBLE) {
       
  4620         prompt("Last Val Monitored")
       
  4621         special(SPC_NOMOD)
       
  4622         interest(3)
       
  4623     }
       
  4624     field(RPCL, DBF_NOACCESS) {
       
  4625         interest(4)
       
  4626         special(SPC_NOMOD)
       
  4627         prompt("Reverse Polish Calc")
       
  4628         extra("unsigned char rpcl[282]")
       
  4629     }
       
  4630     field(ORPC, DBF_NOACCESS) {
       
  4631         interest(4)
       
  4632         special(SPC_NOMOD)
       
  4633         prompt("Reverse Polish OCalc")
       
  4634         extra("unsigned char orpc[282]")
       
  4635     }
       
  4636     field(CACT, DBF_UCHAR) {
       
  4637         interest(1)
       
  4638         special(SPC_NOMOD)
       
  4639         prompt("Calc active")
       
  4640     }
       
  4641     field(CSTAT, DBF_LONG) {
       
  4642         prompt("Calc status")
       
  4643         special(SPC_NOMOD)
       
  4644         interest(1)
       
  4645     }
       
  4646     field(AMASK, DBF_ULONG) {
       
  4647         interest(1)
       
  4648         special(SPC_NOMOD)
       
  4649         prompt("Array mod")
       
  4650     }
       
  4651     field(SIZE, DBF_MENU) {
       
  4652         menu(acalcoutSIZE)
       
  4653         interest(1)
       
  4654         prompt("Array size reported to clients")
       
  4655     }
       
  4656     field(AMEM, DBF_LONG) {
       
  4657         prompt("Allocated array memory")
       
  4658         special(SPC_NOMOD)
       
  4659         interest(1)
       
  4660     }
       
  4661     field(PMEM, DBF_LONG) {
       
  4662         special(SPC_NOMOD)
       
  4663         interest(1)
       
  4664         prompt("Prev array memory")
       
  4665     }
       
  4666 }
       
  4667 device(acalcout, CONSTANT, devaCalcoutSoft, "Soft Channel")
       
  4668 recordtype(stringout) {
       
  4669     %#include "epicsTypes.h"
  1812     %#include "epicsTypes.h"
  4670     %#include "link.h"
  1813     %#include "link.h"
  4671     %#include "epicsMutex.h"
  1814     %#include "epicsMutex.h"
  4672     %#include "ellLib.h"
  1815     %#include "ellLib.h"
  4673     %#include "epicsTime.h"
  1816     %#include "epicsTime.h"
  4674     %#include "callback.h"
  1817     %#include "callback.h"
  4675     field(NAME, DBF_STRING) {
  1818     field(NAME, DBF_STRING) {
       
  1819         special(SPC_NOMOD)
  4676         size(61)
  1820         size(61)
  4677         special(SPC_NOMOD)
       
  4678         prompt("Record Name")
  1821         prompt("Record Name")
  4679     }
  1822     }
  4680     field(DESC, DBF_STRING) {
  1823     field(DESC, DBF_STRING) {
  4681         size(41)
  1824         size(41)
  4682         promptgroup("10 - Common")
       
  4683         prompt("Descriptor")
  1825         prompt("Descriptor")
       
  1826         promptgroup("10 - Common")
  4684     }
  1827     }
  4685     field(ASG, DBF_STRING) {
  1828     field(ASG, DBF_STRING) {
       
  1829         promptgroup("10 - Common")
       
  1830         special(SPC_AS)
       
  1831         prompt("Access Security Group")
  4686         size(29)
  1832         size(29)
  4687         special(SPC_AS)
       
  4688         promptgroup("10 - Common")
       
  4689         prompt("Access Security Group")
       
  4690     }
  1833     }
  4691     field(SCAN, DBF_MENU) {
  1834     field(SCAN, DBF_MENU) {
  4692         menu(menuScan)
  1835         menu(menuScan)
  4693         interest(1)
  1836         interest(1)
  4694         promptgroup("20 - Scan")
       
  4695         special(SPC_SCAN)
  1837         special(SPC_SCAN)
       
  1838         promptgroup("20 - Scan")
  4696         prompt("Scan Mechanism")
  1839         prompt("Scan Mechanism")
  4697     }
  1840     }
  4698     field(PINI, DBF_MENU) {
  1841     field(PINI, DBF_MENU) {
  4699         promptgroup("20 - Scan")
  1842         promptgroup("20 - Scan")
       
  1843         menu(menuPini)
  4700         interest(1)
  1844         interest(1)
  4701         prompt("Process at iocInit")
  1845         prompt("Process at iocInit")
  4702         menu(menuPini)
       
  4703     }
  1846     }
  4704     field(PHAS, DBF_SHORT) {
  1847     field(PHAS, DBF_SHORT) {
       
  1848         prompt("Scan Phase")
  4705         special(SPC_SCAN)
  1849         special(SPC_SCAN)
  4706         interest(1)
  1850         interest(1)
  4707         promptgroup("20 - Scan")
  1851         promptgroup("20 - Scan")
  4708         prompt("Scan Phase")
       
  4709     }
  1852     }
  4710     field(EVNT, DBF_STRING) {
  1853     field(EVNT, DBF_STRING) {
       
  1854         prompt("Event Name")
  4711         size(40)
  1855         size(40)
  4712         prompt("Event Name")
  1856         promptgroup("20 - Scan")
  4713         interest(1)
  1857         interest(1)
  4714         special(SPC_SCAN)
  1858         special(SPC_SCAN)
  4715         promptgroup("20 - Scan")
       
  4716     }
  1859     }
  4717     field(TSE, DBF_SHORT) {
  1860     field(TSE, DBF_SHORT) {
  4718         interest(1)
       
  4719         promptgroup("20 - Scan")
       
  4720         prompt("Time Stamp Event")
  1861         prompt("Time Stamp Event")
       
  1862         promptgroup("20 - Scan")
       
  1863         interest(1)
  4721     }
  1864     }
  4722     field(TSEL, DBF_INLINK) {
  1865     field(TSEL, DBF_INLINK) {
  4723         promptgroup("20 - Scan")
  1866         promptgroup("20 - Scan")
  4724         interest(1)
  1867         interest(1)
  4725         prompt("Time Stamp Link")
  1868         prompt("Time Stamp Link")
  4726     }
  1869     }
  4727     field(DTYP, DBF_DEVICE) {
  1870     field(DTYP, DBF_DEVICE) {
  4728         promptgroup("10 - Common")
       
  4729         interest(1)
       
  4730         prompt("Device Type")
  1871         prompt("Device Type")
       
  1872         interest(1)
       
  1873         promptgroup("10 - Common")
  4731     }
  1874     }
  4732     field(DISV, DBF_SHORT) {
  1875     field(DISV, DBF_SHORT) {
  4733         promptgroup("20 - Scan")
  1876         promptgroup("20 - Scan")
       
  1877         initial("1")
  4734         prompt("Disable Value")
  1878         prompt("Disable Value")
  4735         initial("1")
       
  4736     }
  1879     }
  4737     field(DISA, DBF_SHORT) {
  1880     field(DISA, DBF_SHORT) {
  4738         prompt("Disable")
  1881         prompt("Disable")
  4739     }
  1882     }
  4740     field(SDIS, DBF_INLINK) {
  1883     field(SDIS, DBF_INLINK) {
  4741         prompt("Scanning Disable")
  1884         prompt("Scanning Disable")
  4742         interest(1)
  1885         promptgroup("20 - Scan")
  4743         promptgroup("20 - Scan")
  1886         interest(1)
  4744     }
  1887     }
  4745     field(MLOK, DBF_NOACCESS) {
  1888     field(MLOK, DBF_NOACCESS) {
  4746         extra("epicsMutexId        mlok")
  1889         extra("epicsMutexId        mlok")
  4747         interest(4)
       
  4748         special(SPC_NOMOD)
       
  4749         prompt("Monitor lock")
  1890         prompt("Monitor lock")
       
  1891         interest(4)
       
  1892         special(SPC_NOMOD)
  4750     }
  1893     }
  4751     field(MLIS, DBF_NOACCESS) {
  1894     field(MLIS, DBF_NOACCESS) {
       
  1895         special(SPC_NOMOD)
       
  1896         interest(4)
       
  1897         extra("ELLLIST             mlis")
  4752         prompt("Monitor List")
  1898         prompt("Monitor List")
  4753         interest(4)
       
  4754         special(SPC_NOMOD)
       
  4755         extra("ELLLIST             mlis")
       
  4756     }
  1899     }
  4757     field(BKLNK, DBF_NOACCESS) {
  1900     field(BKLNK, DBF_NOACCESS) {
  4758         interest(4)
       
  4759         special(SPC_NOMOD)
       
  4760         prompt("Backwards link tracking")
  1901         prompt("Backwards link tracking")
  4761         extra("ELLLIST             bklnk")
  1902         extra("ELLLIST             bklnk")
       
  1903         interest(4)
       
  1904         special(SPC_NOMOD)
  4762     }
  1905     }
  4763     field(DISP, DBF_UCHAR) {
  1906     field(DISP, DBF_UCHAR) {
  4764         prompt("Disable putField")
  1907         prompt("Disable putField")
  4765     }
  1908     }
  4766     field(PROC, DBF_UCHAR) {
  1909     field(PROC, DBF_UCHAR) {
  4767         pp(TRUE)
       
  4768         prompt("Force Processing")
  1910         prompt("Force Processing")
       
  1911         pp(TRUE)
  4769         interest(3)
  1912         interest(3)
  4770     }
  1913     }
  4771     field(STAT, DBF_MENU) {
  1914     field(STAT, DBF_MENU) {
  4772         menu(menuAlarmStat)
       
  4773         special(SPC_NOMOD)
       
  4774         prompt("Alarm Status")
  1915         prompt("Alarm Status")
  4775         initial("UDF")
  1916         initial("UDF")
       
  1917         special(SPC_NOMOD)
       
  1918         menu(menuAlarmStat)
  4776     }
  1919     }
  4777     field(SEVR, DBF_MENU) {
  1920     field(SEVR, DBF_MENU) {
       
  1921         menu(menuAlarmSevr)
       
  1922         special(SPC_NOMOD)
  4778         prompt("Alarm Severity")
  1923         prompt("Alarm Severity")
  4779         special(SPC_NOMOD)
       
  4780         menu(menuAlarmSevr)
       
  4781     }
  1924     }
  4782     field(NSTA, DBF_MENU) {
  1925     field(NSTA, DBF_MENU) {
  4783         special(SPC_NOMOD)
       
  4784         interest(2)
       
  4785         prompt("New Alarm Status")
  1926         prompt("New Alarm Status")
       
  1927         special(SPC_NOMOD)
  4786         menu(menuAlarmStat)
  1928         menu(menuAlarmStat)
       
  1929         interest(2)
  4787     }
  1930     }
  4788     field(NSEV, DBF_MENU) {
  1931     field(NSEV, DBF_MENU) {
  4789         prompt("New Alarm Severity")
  1932         prompt("New Alarm Severity")
  4790         interest(2)
  1933         special(SPC_NOMOD)
  4791         special(SPC_NOMOD)
  1934         interest(2)
  4792         menu(menuAlarmSevr)
  1935         menu(menuAlarmSevr)
  4793     }
  1936     }
  4794     field(ACKS, DBF_MENU) {
  1937     field(ACKS, DBF_MENU) {
       
  1938         menu(menuAlarmSevr)
  4795         interest(2)
  1939         interest(2)
  4796         special(SPC_NOMOD)
  1940         special(SPC_NOMOD)
  4797         prompt("Alarm Ack Severity")
  1941         prompt("Alarm Ack Severity")
  4798         menu(menuAlarmSevr)
       
  4799     }
  1942     }
  4800     field(ACKT, DBF_MENU) {
  1943     field(ACKT, DBF_MENU) {
       
  1944         special(SPC_NOMOD)
       
  1945         menu(menuYesNo)
       
  1946         interest(2)
       
  1947         promptgroup("70 - Alarm")
  4801         initial("YES")
  1948         initial("YES")
  4802         prompt("Alarm Ack Transient")
  1949         prompt("Alarm Ack Transient")
  4803         promptgroup("70 - Alarm")
       
  4804         interest(2)
       
  4805         special(SPC_NOMOD)
       
  4806         menu(menuYesNo)
       
  4807     }
  1950     }
  4808     field(DISS, DBF_MENU) {
  1951     field(DISS, DBF_MENU) {
  4809         promptgroup("70 - Alarm")
       
  4810         interest(1)
       
  4811         prompt("Disable Alarm Sevrty")
  1952         prompt("Disable Alarm Sevrty")
  4812         menu(menuAlarmSevr)
  1953         interest(1)
       
  1954         menu(menuAlarmSevr)
       
  1955         promptgroup("70 - Alarm")
  4813     }
  1956     }
  4814     field(LCNT, DBF_UCHAR) {
  1957     field(LCNT, DBF_UCHAR) {
  4815         interest(2)
  1958         special(SPC_NOMOD)
  4816         special(SPC_NOMOD)
  1959         interest(2)
  4817         prompt("Lock Count")
  1960         prompt("Lock Count")
  4818     }
  1961     }
  4819     field(PACT, DBF_UCHAR) {
  1962     field(PACT, DBF_UCHAR) {
  4820         special(SPC_NOMOD)
  1963         special(SPC_NOMOD)
  4821         interest(1)
  1964         interest(1)
  4822         prompt("Record active")
  1965         prompt("Record active")
  4823     }
  1966     }
  4824     field(PUTF, DBF_UCHAR) {
  1967     field(PUTF, DBF_UCHAR) {
  4825         special(SPC_NOMOD)
  1968         interest(1)
  4826         interest(1)
  1969         special(SPC_NOMOD)
  4827         prompt("dbPutField process")
  1970         prompt("dbPutField process")
  4828     }
  1971     }
  4829     field(RPRO, DBF_UCHAR) {
  1972     field(RPRO, DBF_UCHAR) {
  4830         special(SPC_NOMOD)
  1973         special(SPC_NOMOD)
  4831         interest(1)
  1974         interest(1)
  4832         prompt("Reprocess ")
  1975         prompt("Reprocess ")
  4833     }
  1976     }
  4834     field(ASP, DBF_NOACCESS) {
  1977     field(ASP, DBF_NOACCESS) {
  4835         special(SPC_NOMOD)
  1978         interest(4)
  4836         interest(4)
  1979         special(SPC_NOMOD)
       
  1980         extra("struct asgMember    *asp")
  4837         prompt("Access Security Pvt")
  1981         prompt("Access Security Pvt")
  4838         extra("struct asgMember    *asp")
       
  4839     }
  1982     }
  4840     field(PPN, DBF_NOACCESS) {
  1983     field(PPN, DBF_NOACCESS) {
       
  1984         interest(4)
       
  1985         special(SPC_NOMOD)
       
  1986         prompt("pprocessNotify")
  4841         extra("struct processNotify *ppn")
  1987         extra("struct processNotify *ppn")
  4842         prompt("pprocessNotify")
       
  4843         interest(4)
       
  4844         special(SPC_NOMOD)
       
  4845     }
  1988     }
  4846     field(PPNR, DBF_NOACCESS) {
  1989     field(PPNR, DBF_NOACCESS) {
  4847         prompt("pprocessNotifyRecord")
  1990         prompt("pprocessNotifyRecord")
  4848         interest(4)
       
  4849         special(SPC_NOMOD)
       
  4850         extra("struct processNotifyRecord *ppnr")
  1991         extra("struct processNotifyRecord *ppnr")
       
  1992         special(SPC_NOMOD)
       
  1993         interest(4)
  4851     }
  1994     }
  4852     field(SPVT, DBF_NOACCESS) {
  1995     field(SPVT, DBF_NOACCESS) {
  4853         special(SPC_NOMOD)
       
  4854         interest(4)
       
  4855         prompt("Scan Private")
  1996         prompt("Scan Private")
  4856         extra("struct scan_element *spvt")
  1997         extra("struct scan_element *spvt")
       
  1998         interest(4)
       
  1999         special(SPC_NOMOD)
  4857     }
  2000     }
  4858     field(RSET, DBF_NOACCESS) {
  2001     field(RSET, DBF_NOACCESS) {
  4859         prompt("Address of RSET")
  2002         prompt("Address of RSET")
  4860         special(SPC_NOMOD)
       
  4861         interest(4)
       
  4862         extra("struct typed_rset   *rset")
  2003         extra("struct typed_rset   *rset")
       
  2004         interest(4)
       
  2005         special(SPC_NOMOD)
  4863     }
  2006     }
  4864     field(DSET, DBF_NOACCESS) {
  2007     field(DSET, DBF_NOACCESS) {
  4865         extra("struct dset         *dset")
  2008         extra("struct dset         *dset")
  4866         prompt("DSET address")
  2009         prompt("DSET address")
  4867         interest(4)
  2010         interest(4)
  4868         special(SPC_NOMOD)
  2011         special(SPC_NOMOD)
  4869     }
  2012     }
  4870     field(DPVT, DBF_NOACCESS) {
  2013     field(DPVT, DBF_NOACCESS) {
       
  2014         special(SPC_NOMOD)
       
  2015         interest(4)
  4871         extra("void                *dpvt")
  2016         extra("void                *dpvt")
  4872         special(SPC_NOMOD)
       
  4873         interest(4)
       
  4874         prompt("Device Private")
  2017         prompt("Device Private")
  4875     }
  2018     }
  4876     field(RDES, DBF_NOACCESS) {
  2019     field(RDES, DBF_NOACCESS) {
       
  2020         prompt("Address of dbRecordType")
  4877         extra("struct dbRecordType *rdes")
  2021         extra("struct dbRecordType *rdes")
  4878         interest(4)
  2022         special(SPC_NOMOD)
  4879         special(SPC_NOMOD)
  2023         interest(4)
  4880         prompt("Address of dbRecordType")
       
  4881     }
  2024     }
  4882     field(LSET, DBF_NOACCESS) {
  2025     field(LSET, DBF_NOACCESS) {
       
  2026         prompt("Lock Set")
  4883         extra("struct lockRecord   *lset")
  2027         extra("struct lockRecord   *lset")
  4884         special(SPC_NOMOD)
  2028         special(SPC_NOMOD)
  4885         interest(4)
  2029         interest(4)
  4886         prompt("Lock Set")
       
  4887     }
  2030     }
  4888     field(PRIO, DBF_MENU) {
  2031     field(PRIO, DBF_MENU) {
       
  2032         promptgroup("20 - Scan")
       
  2033         special(SPC_SCAN)
       
  2034         interest(1)
  4889         menu(menuPriority)
  2035         menu(menuPriority)
  4890         promptgroup("20 - Scan")
       
  4891         interest(1)
       
  4892         special(SPC_SCAN)
       
  4893         prompt("Scheduling Priority")
  2036         prompt("Scheduling Priority")
  4894     }
  2037     }
  4895     field(TPRO, DBF_UCHAR) {
  2038     field(TPRO, DBF_UCHAR) {
  4896         prompt("Trace Processing")
  2039         prompt("Trace Processing")
  4897     }
  2040     }
  4898     field(BKPT, DBF_NOACCESS) {
  2041     field(BKPT, DBF_NOACCESS) {
       
  2042         extra("char                bkpt")
  4899         prompt("Break Point")
  2043         prompt("Break Point")
  4900         special(SPC_NOMOD)
  2044         special(SPC_NOMOD)
  4901         interest(1)
  2045         interest(1)
  4902         extra("char                bkpt")
       
  4903     }
  2046     }
  4904     field(UDF, DBF_UCHAR) {
  2047     field(UDF, DBF_UCHAR) {
  4905         interest(1)
       
  4906         promptgroup("10 - Common")
       
  4907         prompt("Undefined")
  2048         prompt("Undefined")
  4908         initial("1")
  2049         initial("1")
  4909         pp(TRUE)
  2050         pp(TRUE)
       
  2051         promptgroup("10 - Common")
       
  2052         interest(1)
  4910     }
  2053     }
  4911     field(UDFS, DBF_MENU) {
  2054     field(UDFS, DBF_MENU) {
  4912         menu(menuAlarmSevr)
  2055         interest(1)
  4913         promptgroup("70 - Alarm")
  2056         menu(menuAlarmSevr)
  4914         interest(1)
  2057         promptgroup("70 - Alarm")
       
  2058         initial("INVALID")
  4915         prompt("Undefined Alarm Sevrty")
  2059         prompt("Undefined Alarm Sevrty")
  4916         initial("INVALID")
       
  4917     }
  2060     }
  4918     field(TIME, DBF_NOACCESS) {
  2061     field(TIME, DBF_NOACCESS) {
  4919         interest(2)
  2062         interest(2)
  4920         special(SPC_NOMOD)
  2063         special(SPC_NOMOD)
  4921         prompt("Time")
  2064         prompt("Time")
  4922         extra("epicsTimeStamp      time")
  2065         extra("epicsTimeStamp      time")
  4923     }
  2066     }
  4924     field(FLNK, DBF_FWDLINK) {
  2067     field(FLNK, DBF_FWDLINK) {
  4925         prompt("Forward Process Link")
  2068         prompt("Forward Process Link")
  4926         promptgroup("20 - Scan")
  2069         interest(1)
  4927         interest(1)
  2070         promptgroup("20 - Scan")
  4928     }
  2071     }
  4929     field(VAL, DBF_STRING) {
  2072     field(VAL, DBF_DOUBLE) {
  4930         pp(TRUE)
       
  4931         size(40)
       
  4932         asl(ASL0)
  2073         asl(ASL0)
  4933         promptgroup("50 - Output")
  2074         prompt("Current EGU Value")
  4934         prompt("Current Value")
  2075         pp(TRUE)
  4935     }
       
  4936     field(OVAL, DBF_STRING) {
       
  4937         size(40)
       
  4938         prompt("Previous Value")
       
  4939         special(SPC_NOMOD)
       
  4940         interest(3)
       
  4941     }
       
  4942     field(DOL, DBF_INLINK) {
       
  4943         promptgroup("40 - Input")
  2076         promptgroup("40 - Input")
  4944         interest(1)
  2077     }
  4945         prompt("Desired Output Loc")
  2078     field(INP, DBF_INLINK) {
  4946     }
  2079         prompt("Input Specification")
  4947     field(OMSL, DBF_MENU) {
  2080         interest(1)
  4948         prompt("Output Mode Select")
  2081         promptgroup("40 - Input")
  4949         interest(1)
  2082     }
  4950         promptgroup("50 - Output")
  2083     field(PREC, DBF_SHORT) {
  4951         menu(menuOmsl)
       
  4952     }
       
  4953     field(OUT, DBF_OUTLINK) {
       
  4954         prompt("Output Specification")
       
  4955         promptgroup("50 - Output")
       
  4956         interest(1)
       
  4957     }
       
  4958     field(MPST, DBF_MENU) {
       
  4959         interest(1)
       
  4960         promptgroup("80 - Display")
  2084         promptgroup("80 - Display")
  4961         prompt("Post Value Monitors")
  2085         prop(YES)
  4962         menu(stringoutPOST)
  2086         interest(1)
  4963     }
  2087         prompt("Display Precision")
  4964     field(APST, DBF_MENU) {
  2088     }
  4965         menu(stringoutPOST)
  2089     field(LINR, DBF_MENU) {
  4966         prompt("Post Archive Monitors")
  2090         prompt("Linearization")
       
  2091         special(SPC_LINCONV)
       
  2092         menu(menuConvert)
       
  2093         interest(1)
       
  2094         promptgroup("60 - Convert")
       
  2095         pp(TRUE)
       
  2096     }
       
  2097     field(EGUF, DBF_DOUBLE) {
       
  2098         prompt("Engineer Units Full")
       
  2099         special(SPC_LINCONV)
       
  2100         interest(1)
       
  2101         pp(TRUE)
       
  2102         promptgroup("60 - Convert")
       
  2103     }
       
  2104     field(EGUL, DBF_DOUBLE) {
       
  2105         special(SPC_LINCONV)
       
  2106         interest(1)
       
  2107         promptgroup("60 - Convert")
       
  2108         pp(TRUE)
       
  2109         prompt("Engineer Units Low")
       
  2110     }
       
  2111     field(EGU, DBF_STRING) {
  4967         promptgroup("80 - Display")
  2112         promptgroup("80 - Display")
  4968         interest(1)
  2113         prop(YES)
  4969     }
  2114         interest(1)
  4970     field(SIOL, DBF_OUTLINK) {
  2115         prompt("Engineering Units")
  4971         prompt("Simulation Output Link")
  2116         size(16)
       
  2117     }
       
  2118     field(HOPR, DBF_DOUBLE) {
       
  2119         prompt("High Operating Range")
       
  2120         promptgroup("80 - Display")
       
  2121         interest(1)
       
  2122         prop(YES)
       
  2123     }
       
  2124     field(LOPR, DBF_DOUBLE) {
       
  2125         prompt("Low Operating Range")
       
  2126         interest(1)
       
  2127         prop(YES)
       
  2128         promptgroup("80 - Display")
       
  2129     }
       
  2130     field(AOFF, DBF_DOUBLE) {
       
  2131         prompt("Adjustment Offset")
       
  2132         interest(1)
       
  2133         promptgroup("60 - Convert")
       
  2134         pp(TRUE)
       
  2135     }
       
  2136     field(ASLO, DBF_DOUBLE) {
       
  2137         interest(1)
       
  2138         pp(TRUE)
       
  2139         promptgroup("60 - Convert")
       
  2140         initial("1")
       
  2141         prompt("Adjustment Slope")
       
  2142     }
       
  2143     field(SMOO, DBF_DOUBLE) {
       
  2144         promptgroup("60 - Convert")
       
  2145         interest(1)
       
  2146         prompt("Smoothing")
       
  2147     }
       
  2148     field(HIHI, DBF_DOUBLE) {
       
  2149         prompt("Hihi Alarm Limit")
       
  2150         pp(TRUE)
       
  2151         promptgroup("70 - Alarm")
       
  2152         interest(1)
       
  2153         prop(YES)
       
  2154     }
       
  2155     field(LOLO, DBF_DOUBLE) {
       
  2156         prompt("Lolo Alarm Limit")
       
  2157         pp(TRUE)
       
  2158         promptgroup("70 - Alarm")
       
  2159         prop(YES)
       
  2160         interest(1)
       
  2161     }
       
  2162     field(HIGH, DBF_DOUBLE) {
       
  2163         promptgroup("70 - Alarm")
       
  2164         pp(TRUE)
       
  2165         interest(1)
       
  2166         prop(YES)
       
  2167         prompt("High Alarm Limit")
       
  2168     }
       
  2169     field(LOW, DBF_DOUBLE) {
       
  2170         prompt("Low Alarm Limit")
       
  2171         interest(1)
       
  2172         prop(YES)
       
  2173         pp(TRUE)
       
  2174         promptgroup("70 - Alarm")
       
  2175     }
       
  2176     field(HHSV, DBF_MENU) {
       
  2177         interest(1)
       
  2178         menu(menuAlarmSevr)
       
  2179         prop(YES)
       
  2180         pp(TRUE)
       
  2181         promptgroup("70 - Alarm")
       
  2182         prompt("Hihi Severity")
       
  2183     }
       
  2184     field(LLSV, DBF_MENU) {
       
  2185         pp(TRUE)
       
  2186         promptgroup("70 - Alarm")
       
  2187         menu(menuAlarmSevr)
       
  2188         prop(YES)
       
  2189         interest(1)
       
  2190         prompt("Lolo Severity")
       
  2191     }
       
  2192     field(HSV, DBF_MENU) {
       
  2193         pp(TRUE)
       
  2194         promptgroup("70 - Alarm")
       
  2195         menu(menuAlarmSevr)
       
  2196         interest(1)
       
  2197         prop(YES)
       
  2198         prompt("High Severity")
       
  2199     }
       
  2200     field(LSV, DBF_MENU) {
       
  2201         pp(TRUE)
       
  2202         promptgroup("70 - Alarm")
       
  2203         menu(menuAlarmSevr)
       
  2204         interest(1)
       
  2205         prop(YES)
       
  2206         prompt("Low Severity")
       
  2207     }
       
  2208     field(HYST, DBF_DOUBLE) {
       
  2209         interest(1)
       
  2210         promptgroup("70 - Alarm")
       
  2211         prompt("Alarm Deadband")
       
  2212     }
       
  2213     field(AFTC, DBF_DOUBLE) {
       
  2214         prompt("Alarm Filter Time Constant")
       
  2215         promptgroup("70 - Alarm")
       
  2216         interest(1)
       
  2217     }
       
  2218     field(ADEL, DBF_DOUBLE) {
       
  2219         interest(1)
       
  2220         promptgroup("80 - Display")
       
  2221         prompt("Archive Deadband")
       
  2222     }
       
  2223     field(MDEL, DBF_DOUBLE) {
       
  2224         prompt("Monitor Deadband")
       
  2225         interest(1)
       
  2226         promptgroup("80 - Display")
       
  2227     }
       
  2228     field(LALM, DBF_DOUBLE) {
       
  2229         special(SPC_NOMOD)
       
  2230         interest(3)
       
  2231         prompt("Last Value Alarmed")
       
  2232     }
       
  2233     field(AFVL, DBF_DOUBLE) {
       
  2234         prompt("Alarm Filter Value")
       
  2235         interest(3)
       
  2236         special(SPC_NOMOD)
       
  2237     }
       
  2238     field(ALST, DBF_DOUBLE) {
       
  2239         prompt("Last Value Archived")
       
  2240         special(SPC_NOMOD)
       
  2241         interest(3)
       
  2242     }
       
  2243     field(MLST, DBF_DOUBLE) {
       
  2244         prompt("Last Val Monitored")
       
  2245         special(SPC_NOMOD)
       
  2246         interest(3)
       
  2247     }
       
  2248     field(ESLO, DBF_DOUBLE) {
       
  2249         initial("1")
       
  2250         prompt("Raw to EGU Slope")
       
  2251         interest(2)
       
  2252         promptgroup("60 - Convert")
       
  2253         pp(TRUE)
       
  2254     }
       
  2255     field(EOFF, DBF_DOUBLE) {
       
  2256         prompt("Raw to EGU Offset")
       
  2257         pp(TRUE)
       
  2258         promptgroup("60 - Convert")
       
  2259         interest(2)
       
  2260     }
       
  2261     field(ROFF, DBF_ULONG) {
       
  2262         interest(2)
       
  2263         pp(TRUE)
       
  2264         prompt("Raw Offset")
       
  2265     }
       
  2266     field(PBRK, DBF_NOACCESS) {
       
  2267         special(SPC_NOMOD)
       
  2268         interest(4)
       
  2269         extra("void *   pbrk")
       
  2270         prompt("Ptrto brkTable")
       
  2271     }
       
  2272     field(INIT, DBF_SHORT) {
       
  2273         prompt("Initialized?")
       
  2274         special(SPC_NOMOD)
       
  2275         interest(3)
       
  2276     }
       
  2277     field(LBRK, DBF_SHORT) {
       
  2278         prompt("LastBreak Point")
       
  2279         special(SPC_NOMOD)
       
  2280         interest(3)
       
  2281     }
       
  2282     field(RVAL, DBF_LONG) {
       
  2283         pp(TRUE)
       
  2284         prompt("Current Raw Value")
       
  2285     }
       
  2286     field(ORAW, DBF_LONG) {
       
  2287         interest(3)
       
  2288         special(SPC_NOMOD)
       
  2289         prompt("Previous Raw Value")
       
  2290     }
       
  2291     field(SIOL, DBF_INLINK) {
       
  2292         prompt("Simulation Input Link")
  4972         promptgroup("90 - Simulate")
  2293         promptgroup("90 - Simulate")
  4973         interest(1)
  2294         interest(1)
       
  2295     }
       
  2296     field(SVAL, DBF_DOUBLE) {
       
  2297         prompt("Simulation Value")
  4974     }
  2298     }
  4975     field(SIML, DBF_INLINK) {
  2299     field(SIML, DBF_INLINK) {
  4976         prompt("Simulation Mode Link")
  2300         prompt("Simulation Mode Link")
       
  2301         interest(1)
  4977         promptgroup("90 - Simulate")
  2302         promptgroup("90 - Simulate")
  4978         interest(1)
       
  4979     }
  2303     }
  4980     field(SIMM, DBF_MENU) {
  2304     field(SIMM, DBF_MENU) {
  4981         interest(1)
  2305         special(SPC_MOD)
  4982         special(SPC_MOD)
  2306         interest(1)
       
  2307         menu(menuSimm)
  4983         prompt("Simulation Mode")
  2308         prompt("Simulation Mode")
  4984         menu(menuYesNo)
       
  4985     }
  2309     }
  4986     field(SIMS, DBF_MENU) {
  2310     field(SIMS, DBF_MENU) {
  4987         menu(menuAlarmSevr)
       
  4988         prompt("Simulation Mode Severity")
  2311         prompt("Simulation Mode Severity")
  4989         interest(2)
  2312         interest(2)
       
  2313         menu(menuAlarmSevr)
  4990         promptgroup("90 - Simulate")
  2314         promptgroup("90 - Simulate")
  4991     }
  2315     }
  4992     field(OLDSIMM, DBF_MENU) {
  2316     field(OLDSIMM, DBF_MENU) {
  4993         prompt("Prev. Simulation Mode")
  2317         prompt("Prev. Simulation Mode")
  4994         special(SPC_NOMOD)
  2318         special(SPC_NOMOD)
  4995         interest(4)
       
  4996         menu(menuSimm)
  2319         menu(menuSimm)
       
  2320         interest(4)
  4997     }
  2321     }
  4998     field(SSCN, DBF_MENU) {
  2322     field(SSCN, DBF_MENU) {
       
  2323         menu(menuScan)
       
  2324         interest(1)
       
  2325         promptgroup("90 - Simulate")
  4999         initial("65535")
  2326         initial("65535")
       
  2327         prompt("Sim. Mode Scan")
       
  2328     }
       
  2329     field(SDLY, DBF_DOUBLE) {
  5000         promptgroup("90 - Simulate")
  2330         promptgroup("90 - Simulate")
  5001         interest(1)
  2331         interest(2)
  5002         prompt("Sim. Mode Scan")
       
  5003         menu(menuScan)
       
  5004     }
       
  5005     field(SDLY, DBF_DOUBLE) {
       
  5006         interest(2)
       
  5007         promptgroup("90 - Simulate")
       
  5008         prompt("Sim. Mode Async Delay")
  2332         prompt("Sim. Mode Async Delay")
  5009         initial("-1.0")
  2333         initial("-1.0")
  5010     }
  2334     }
  5011     field(SIMPVT, DBF_NOACCESS) {
  2335     field(SIMPVT, DBF_NOACCESS) {
       
  2336         extra("CALLBACK            *simpvt")
  5012         prompt("Sim. Mode Private")
  2337         prompt("Sim. Mode Private")
  5013         special(SPC_NOMOD)
  2338         interest(4)
  5014         interest(4)
  2339         special(SPC_NOMOD)
  5015         extra("CALLBACK            *simpvt")
       
  5016     }
       
  5017     field(IVOA, DBF_MENU) {
       
  5018         interest(2)
       
  5019         promptgroup("50 - Output")
       
  5020         prompt("INVALID output action")
       
  5021         menu(menuIvoa)
       
  5022     }
       
  5023     field(IVOV, DBF_STRING) {
       
  5024         promptgroup("50 - Output")
       
  5025         interest(2)
       
  5026         prompt("INVALID output value")
       
  5027         size(40)
       
  5028     }
  2340     }
  5029 }
  2341 }
  5030 device(stringout, CONSTANT, devSoSoft, "Soft Channel")
  2342 device(ai, CONSTANT, devAiSoft, "Soft Channel")
  5031 device(stringout, CONSTANT, devSoSoftCallback, "Async Soft Channel")
  2343 device(ai, CONSTANT, devAiSoftRaw, "Raw Soft Channel")
  5032 device(stringout, INST_IO, devSoStdio, "stdio")
  2344 device(ai, CONSTANT, devAiSoftCallback, "Async Soft Channel")
  5033 device(stringout, INST_IO, asynSoOctetWrite, "asynOctetWrite")
  2345 device(ai, INST_IO, devTimestampAI, "Soft Timestamp")
  5034 device(stringout, INST_IO, devstringoutStream, "stream")
  2346 device(ai, INST_IO, devAiGeneralTime, "General Time")
  5035 device(stringout, INST_IO, devSoStrParm, "asyn so stringParm")
  2347 device(ai, INST_IO, asynAiInt32, "asynInt32")
  5036 device(stringout, INST_IO, devSoEurotherm, "asyn so Eurotherm")
  2348 device(ai, INST_IO, asynAiInt32Average, "asynInt32Average")
  5037 device(stringout, INST_IO, devSoMPC, "asyn MPC")
  2349 device(ai, INST_IO, asynAiFloat64, "asynFloat64")
  5038 recordtype(stringin) {
  2350 device(ai, INST_IO, asynAiFloat64Average, "asynFloat64Average")
       
  2351 device(ai, INST_IO, devaiStream, "stream")
       
  2352 device(ai, INST_IO, devAiStrParm, "asyn ai stringParm")
       
  2353 device(ai, INST_IO, devAiHeidND261, "asyn ai HeidND261")
       
  2354 device(ai, INST_IO, devAiMKS, "HPS SensaVac 937")
       
  2355 device(ai, INST_IO, devAiMPC, "asyn MPC")
       
  2356 device(ai, GPIB_IO, devAiGP307Gpib, "Vg307 GPIB Instrument")
       
  2357 device(ai, BBGPIB_IO, devAiAX301, "PZT Bug")
       
  2358 device(ai, INST_IO, devAiTelevac, "asyn Televac")
       
  2359 device(ai, INST_IO, devAiTPG261, "asyn TPG261")
       
  2360 recordtype(bi) {
  5039     %#include "epicsTypes.h"
  2361     %#include "epicsTypes.h"
  5040     %#include "link.h"
  2362     %#include "link.h"
  5041     %#include "epicsMutex.h"
  2363     %#include "epicsMutex.h"
  5042     %#include "ellLib.h"
  2364     %#include "ellLib.h"
  5043     %#include "epicsTime.h"
  2365     %#include "epicsTime.h"
  5057         special(SPC_AS)
  2379         special(SPC_AS)
  5058         prompt("Access Security Group")
  2380         prompt("Access Security Group")
  5059         size(29)
  2381         size(29)
  5060     }
  2382     }
  5061     field(SCAN, DBF_MENU) {
  2383     field(SCAN, DBF_MENU) {
       
  2384         prompt("Scan Mechanism")
       
  2385         promptgroup("20 - Scan")
       
  2386         menu(menuScan)
       
  2387         interest(1)
  5062         special(SPC_SCAN)
  2388         special(SPC_SCAN)
  5063         interest(1)
       
  5064         promptgroup("20 - Scan")
       
  5065         prompt("Scan Mechanism")
       
  5066         menu(menuScan)
       
  5067     }
  2389     }
  5068     field(PINI, DBF_MENU) {
  2390     field(PINI, DBF_MENU) {
  5069         promptgroup("20 - Scan")
       
  5070         interest(1)
       
  5071         prompt("Process at iocInit")
  2391         prompt("Process at iocInit")
       
  2392         interest(1)
  5072         menu(menuPini)
  2393         menu(menuPini)
       
  2394         promptgroup("20 - Scan")
  5073     }
  2395     }
  5074     field(PHAS, DBF_SHORT) {
  2396     field(PHAS, DBF_SHORT) {
  5075         interest(1)
  2397         prompt("Scan Phase")
  5076         promptgroup("20 - Scan")
  2398         interest(1)
  5077         special(SPC_SCAN)
  2399         special(SPC_SCAN)
  5078         prompt("Scan Phase")
  2400         promptgroup("20 - Scan")
  5079     }
  2401     }
  5080     field(EVNT, DBF_STRING) {
  2402     field(EVNT, DBF_STRING) {
  5081         prompt("Event Name")
  2403         prompt("Event Name")
  5082         interest(1)
  2404         size(40)
  5083         promptgroup("20 - Scan")
  2405         promptgroup("20 - Scan")
  5084         special(SPC_SCAN)
  2406         special(SPC_SCAN)
  5085         size(40)
  2407         interest(1)
  5086     }
  2408     }
  5087     field(TSE, DBF_SHORT) {
  2409     field(TSE, DBF_SHORT) {
  5088         prompt("Time Stamp Event")
  2410         prompt("Time Stamp Event")
  5089         interest(1)
  2411         interest(1)
  5090         promptgroup("20 - Scan")
  2412         promptgroup("20 - Scan")
  5091     }
  2413     }
  5092     field(TSEL, DBF_INLINK) {
  2414     field(TSEL, DBF_INLINK) {
       
  2415         interest(1)
       
  2416         promptgroup("20 - Scan")
  5093         prompt("Time Stamp Link")
  2417         prompt("Time Stamp Link")
  5094         interest(1)
       
  5095         promptgroup("20 - Scan")
       
  5096     }
  2418     }
  5097     field(DTYP, DBF_DEVICE) {
  2419     field(DTYP, DBF_DEVICE) {
       
  2420         promptgroup("10 - Common")
       
  2421         interest(1)
  5098         prompt("Device Type")
  2422         prompt("Device Type")
  5099         interest(1)
       
  5100         promptgroup("10 - Common")
       
  5101     }
  2423     }
  5102     field(DISV, DBF_SHORT) {
  2424     field(DISV, DBF_SHORT) {
  5103         promptgroup("20 - Scan")
       
  5104         prompt("Disable Value")
  2425         prompt("Disable Value")
  5105         initial("1")
  2426         initial("1")
       
  2427         promptgroup("20 - Scan")
  5106     }
  2428     }
  5107     field(DISA, DBF_SHORT) {
  2429     field(DISA, DBF_SHORT) {
  5108         prompt("Disable")
  2430         prompt("Disable")
  5109     }
  2431     }
  5110     field(SDIS, DBF_INLINK) {
  2432     field(SDIS, DBF_INLINK) {
  5111         prompt("Scanning Disable")
  2433         prompt("Scanning Disable")
  5112         promptgroup("20 - Scan")
  2434         promptgroup("20 - Scan")
  5113         interest(1)
  2435         interest(1)
  5114     }
  2436     }
  5115     field(MLOK, DBF_NOACCESS) {
  2437     field(MLOK, DBF_NOACCESS) {
       
  2438         special(SPC_NOMOD)
       
  2439         interest(4)
       
  2440         prompt("Monitor lock")
  5116         extra("epicsMutexId        mlok")
  2441         extra("epicsMutexId        mlok")
  5117         interest(4)
       
  5118         special(SPC_NOMOD)
       
  5119         prompt("Monitor lock")
       
  5120     }
  2442     }
  5121     field(MLIS, DBF_NOACCESS) {
  2443     field(MLIS, DBF_NOACCESS) {
       
  2444         interest(4)
       
  2445         special(SPC_NOMOD)
  5122         prompt("Monitor List")
  2446         prompt("Monitor List")
  5123         special(SPC_NOMOD)
       
  5124         interest(4)
       
  5125         extra("ELLLIST             mlis")
  2447         extra("ELLLIST             mlis")
  5126     }
  2448     }
  5127     field(BKLNK, DBF_NOACCESS) {
  2449     field(BKLNK, DBF_NOACCESS) {
       
  2450         interest(4)
       
  2451         special(SPC_NOMOD)
  5128         prompt("Backwards link tracking")
  2452         prompt("Backwards link tracking")
  5129         interest(4)
       
  5130         special(SPC_NOMOD)
       
  5131         extra("ELLLIST             bklnk")
  2453         extra("ELLLIST             bklnk")
  5132     }
  2454     }
  5133     field(DISP, DBF_UCHAR) {
  2455     field(DISP, DBF_UCHAR) {
  5134         prompt("Disable putField")
  2456         prompt("Disable putField")
  5135     }
  2457     }
  5136     field(PROC, DBF_UCHAR) {
  2458     field(PROC, DBF_UCHAR) {
       
  2459         pp(TRUE)
  5137         interest(3)
  2460         interest(3)
  5138         prompt("Force Processing")
  2461         prompt("Force Processing")
  5139         pp(TRUE)
       
  5140     }
  2462     }
  5141     field(STAT, DBF_MENU) {
  2463     field(STAT, DBF_MENU) {
  5142         initial("UDF")
  2464         initial("UDF")
  5143         special(SPC_NOMOD)
       
  5144         prompt("Alarm Status")
  2465         prompt("Alarm Status")
       
  2466         special(SPC_NOMOD)
  5145         menu(menuAlarmStat)
  2467         menu(menuAlarmStat)
  5146     }
  2468     }
  5147     field(SEVR, DBF_MENU) {
  2469     field(SEVR, DBF_MENU) {
  5148         prompt("Alarm Severity")
  2470         prompt("Alarm Severity")
  5149         special(SPC_NOMOD)
  2471         menu(menuAlarmSevr)
  5150         menu(menuAlarmSevr)
  2472         special(SPC_NOMOD)
  5151     }
  2473     }
  5152     field(NSTA, DBF_MENU) {
  2474     field(NSTA, DBF_MENU) {
       
  2475         prompt("New Alarm Status")
       
  2476         special(SPC_NOMOD)
       
  2477         interest(2)
  5153         menu(menuAlarmStat)
  2478         menu(menuAlarmStat)
  5154         special(SPC_NOMOD)
       
  5155         interest(2)
       
  5156         prompt("New Alarm Status")
       
  5157     }
  2479     }
  5158     field(NSEV, DBF_MENU) {
  2480     field(NSEV, DBF_MENU) {
  5159         menu(menuAlarmSevr)
       
  5160         special(SPC_NOMOD)
       
  5161         interest(2)
       
  5162         prompt("New Alarm Severity")
  2481         prompt("New Alarm Severity")
       
  2482         menu(menuAlarmSevr)
       
  2483         interest(2)
       
  2484         special(SPC_NOMOD)
  5163     }
  2485     }
  5164     field(ACKS, DBF_MENU) {
  2486     field(ACKS, DBF_MENU) {
  5165         interest(2)
       
  5166         special(SPC_NOMOD)
       
  5167         prompt("Alarm Ack Severity")
  2487         prompt("Alarm Ack Severity")
       
  2488         special(SPC_NOMOD)
       
  2489         interest(2)
  5168         menu(menuAlarmSevr)
  2490         menu(menuAlarmSevr)
  5169     }
  2491     }
  5170     field(ACKT, DBF_MENU) {
  2492     field(ACKT, DBF_MENU) {
  5171         prompt("Alarm Ack Transient")
  2493         prompt("Alarm Ack Transient")
  5172         special(SPC_NOMOD)
  2494         initial("YES")
  5173         interest(2)
  2495         promptgroup("70 - Alarm")
  5174         promptgroup("70 - Alarm")
  2496         special(SPC_NOMOD)
       
  2497         interest(2)
  5175         menu(menuYesNo)
  2498         menu(menuYesNo)
  5176         initial("YES")
       
  5177     }
  2499     }
  5178     field(DISS, DBF_MENU) {
  2500     field(DISS, DBF_MENU) {
  5179         interest(1)
       
  5180         promptgroup("70 - Alarm")
       
  5181         prompt("Disable Alarm Sevrty")
  2501         prompt("Disable Alarm Sevrty")
       
  2502         promptgroup("70 - Alarm")
       
  2503         interest(1)
  5182         menu(menuAlarmSevr)
  2504         menu(menuAlarmSevr)
  5183     }
  2505     }
  5184     field(LCNT, DBF_UCHAR) {
  2506     field(LCNT, DBF_UCHAR) {
  5185         special(SPC_NOMOD)
       
  5186         interest(2)
       
  5187         prompt("Lock Count")
  2507         prompt("Lock Count")
       
  2508         interest(2)
       
  2509         special(SPC_NOMOD)
  5188     }
  2510     }
  5189     field(PACT, DBF_UCHAR) {
  2511     field(PACT, DBF_UCHAR) {
  5190         special(SPC_NOMOD)
       
  5191         interest(1)
       
  5192         prompt("Record active")
  2512         prompt("Record active")
       
  2513         special(SPC_NOMOD)
       
  2514         interest(1)
  5193     }
  2515     }
  5194     field(PUTF, DBF_UCHAR) {
  2516     field(PUTF, DBF_UCHAR) {
  5195         interest(1)
       
  5196         special(SPC_NOMOD)
       
  5197         prompt("dbPutField process")
  2517         prompt("dbPutField process")
       
  2518         interest(1)
       
  2519         special(SPC_NOMOD)
  5198     }
  2520     }
  5199     field(RPRO, DBF_UCHAR) {
  2521     field(RPRO, DBF_UCHAR) {
       
  2522         interest(1)
       
  2523         special(SPC_NOMOD)
  5200         prompt("Reprocess ")
  2524         prompt("Reprocess ")
  5201         interest(1)
       
  5202         special(SPC_NOMOD)
       
  5203     }
  2525     }
  5204     field(ASP, DBF_NOACCESS) {
  2526     field(ASP, DBF_NOACCESS) {
       
  2527         interest(4)
       
  2528         special(SPC_NOMOD)
  5205         extra("struct asgMember    *asp")
  2529         extra("struct asgMember    *asp")
  5206         interest(4)
       
  5207         special(SPC_NOMOD)
       
  5208         prompt("Access Security Pvt")
  2530         prompt("Access Security Pvt")
  5209     }
  2531     }
  5210     field(PPN, DBF_NOACCESS) {
  2532     field(PPN, DBF_NOACCESS) {
       
  2533         interest(4)
       
  2534         special(SPC_NOMOD)
  5211         extra("struct processNotify *ppn")
  2535         extra("struct processNotify *ppn")
  5212         interest(4)
       
  5213         special(SPC_NOMOD)
       
  5214         prompt("pprocessNotify")
  2536         prompt("pprocessNotify")
  5215     }
  2537     }
  5216     field(PPNR, DBF_NOACCESS) {
  2538     field(PPNR, DBF_NOACCESS) {
  5217         special(SPC_NOMOD)
  2539         interest(4)
  5218         interest(4)
  2540         special(SPC_NOMOD)
  5219         prompt("pprocessNotifyRecord")
  2541         prompt("pprocessNotifyRecord")
  5220         extra("struct processNotifyRecord *ppnr")
  2542         extra("struct processNotifyRecord *ppnr")
  5221     }
  2543     }
  5222     field(SPVT, DBF_NOACCESS) {
  2544     field(SPVT, DBF_NOACCESS) {
  5223         extra("struct scan_element *spvt")
  2545         extra("struct scan_element *spvt")
  5224         special(SPC_NOMOD)
       
  5225         interest(4)
       
  5226         prompt("Scan Private")
  2546         prompt("Scan Private")
       
  2547         special(SPC_NOMOD)
       
  2548         interest(4)
  5227     }
  2549     }
  5228     field(RSET, DBF_NOACCESS) {
  2550     field(RSET, DBF_NOACCESS) {
  5229         special(SPC_NOMOD)
  2551         interest(4)
  5230         interest(4)
  2552         special(SPC_NOMOD)
       
  2553         extra("struct typed_rset   *rset")
  5231         prompt("Address of RSET")
  2554         prompt("Address of RSET")
  5232         extra("struct typed_rset   *rset")
       
  5233     }
  2555     }
  5234     field(DSET, DBF_NOACCESS) {
  2556     field(DSET, DBF_NOACCESS) {
       
  2557         special(SPC_NOMOD)
       
  2558         interest(4)
       
  2559         prompt("DSET address")
  5235         extra("struct dset         *dset")
  2560         extra("struct dset         *dset")
  5236         special(SPC_NOMOD)
       
  5237         interest(4)
       
  5238         prompt("DSET address")
       
  5239     }
  2561     }
  5240     field(DPVT, DBF_NOACCESS) {
  2562     field(DPVT, DBF_NOACCESS) {
  5241         interest(4)
  2563         special(SPC_NOMOD)
  5242         special(SPC_NOMOD)
  2564         interest(4)
  5243         prompt("Device Private")
  2565         prompt("Device Private")
  5244         extra("void                *dpvt")
  2566         extra("void                *dpvt")
  5245     }
  2567     }
  5246     field(RDES, DBF_NOACCESS) {
  2568     field(RDES, DBF_NOACCESS) {
       
  2569         interest(4)
       
  2570         special(SPC_NOMOD)
       
  2571         prompt("Address of dbRecordType")
  5247         extra("struct dbRecordType *rdes")
  2572         extra("struct dbRecordType *rdes")
  5248         special(SPC_NOMOD)
       
  5249         interest(4)
       
  5250         prompt("Address of dbRecordType")
       
  5251     }
  2573     }
  5252     field(LSET, DBF_NOACCESS) {
  2574     field(LSET, DBF_NOACCESS) {
       
  2575         interest(4)
       
  2576         special(SPC_NOMOD)
  5253         extra("struct lockRecord   *lset")
  2577         extra("struct lockRecord   *lset")
  5254         prompt("Lock Set")
  2578         prompt("Lock Set")
  5255         interest(4)
       
  5256         special(SPC_NOMOD)
       
  5257     }
  2579     }
  5258     field(PRIO, DBF_MENU) {
  2580     field(PRIO, DBF_MENU) {
       
  2581         promptgroup("20 - Scan")
       
  2582         special(SPC_SCAN)
       
  2583         interest(1)
  5259         menu(menuPriority)
  2584         menu(menuPriority)
  5260         special(SPC_SCAN)
       
  5261         interest(1)
       
  5262         promptgroup("20 - Scan")
       
  5263         prompt("Scheduling Priority")
  2585         prompt("Scheduling Priority")
  5264     }
  2586     }
  5265     field(TPRO, DBF_UCHAR) {
  2587     field(TPRO, DBF_UCHAR) {
  5266         prompt("Trace Processing")
  2588         prompt("Trace Processing")
  5267     }
  2589     }
  5268     field(BKPT, DBF_NOACCESS) {
  2590     field(BKPT, DBF_NOACCESS) {
       
  2591         interest(1)
       
  2592         special(SPC_NOMOD)
  5269         prompt("Break Point")
  2593         prompt("Break Point")
  5270         interest(1)
       
  5271         special(SPC_NOMOD)
       
  5272         extra("char                bkpt")
  2594         extra("char                bkpt")
  5273     }
  2595     }
  5274     field(UDF, DBF_UCHAR) {
  2596     field(UDF, DBF_UCHAR) {
  5275         interest(1)
  2597         interest(1)
  5276         promptgroup("10 - Common")
  2598         pp(TRUE)
       
  2599         promptgroup("10 - Common")
       
  2600         initial("1")
  5277         prompt("Undefined")
  2601         prompt("Undefined")
  5278         initial("1")
       
  5279         pp(TRUE)
       
  5280     }
  2602     }
  5281     field(UDFS, DBF_MENU) {
  2603     field(UDFS, DBF_MENU) {
  5282         menu(menuAlarmSevr)
  2604         promptgroup("70 - Alarm")
       
  2605         menu(menuAlarmSevr)
       
  2606         interest(1)
  5283         prompt("Undefined Alarm Sevrty")
  2607         prompt("Undefined Alarm Sevrty")
  5284         promptgroup("70 - Alarm")
       
  5285         interest(1)
       
  5286         initial("INVALID")
  2608         initial("INVALID")
  5287     }
  2609     }
  5288     field(TIME, DBF_NOACCESS) {
  2610     field(TIME, DBF_NOACCESS) {
  5289         interest(2)
  2611         interest(2)
  5290         special(SPC_NOMOD)
  2612         special(SPC_NOMOD)
       
  2613         extra("epicsTimeStamp      time")
  5291         prompt("Time")
  2614         prompt("Time")
  5292         extra("epicsTimeStamp      time")
       
  5293     }
  2615     }
  5294     field(FLNK, DBF_FWDLINK) {
  2616     field(FLNK, DBF_FWDLINK) {
  5295         interest(1)
       
  5296         promptgroup("20 - Scan")
       
  5297         prompt("Forward Process Link")
  2617         prompt("Forward Process Link")
  5298     }
  2618         interest(1)
  5299     field(VAL, DBF_STRING) {
  2619         promptgroup("20 - Scan")
       
  2620     }
       
  2621     field(INP, DBF_INLINK) {
       
  2622         interest(1)
       
  2623         promptgroup("40 - Input")
       
  2624         prompt("Input Specification")
       
  2625     }
       
  2626     field(VAL, DBF_ENUM) {
       
  2627         prompt("Current Value")
  5300         asl(ASL0)
  2628         asl(ASL0)
       
  2629         pp(TRUE)
  5301         promptgroup("40 - Input")
  2630         promptgroup("40 - Input")
  5302         prompt("Current Value")
  2631     }
  5303         pp(TRUE)
  2632     field(ZSV, DBF_MENU) {
  5304         size(40)
  2633         menu(menuAlarmSevr)
  5305     }
  2634         interest(1)
  5306     field(OVAL, DBF_STRING) {
  2635         promptgroup("70 - Alarm")
  5307         interest(3)
  2636         pp(TRUE)
  5308         special(SPC_NOMOD)
  2637         prompt("Zero Error Severity")
  5309         prompt("Previous Value")
  2638     }
  5310         size(40)
  2639     field(OSV, DBF_MENU) {
  5311     }
  2640         interest(1)
  5312     field(INP, DBF_INLINK) {
  2641         menu(menuAlarmSevr)
  5313         promptgroup("40 - Input")
  2642         promptgroup("70 - Alarm")
  5314         interest(1)
  2643         pp(TRUE)
  5315         prompt("Input Specification")
  2644         prompt("One Error Severity")
  5316     }
  2645     }
  5317     field(MPST, DBF_MENU) {
  2646     field(COSV, DBF_MENU) {
  5318         menu(stringinPOST)
  2647         prompt("Change of State Svr")
       
  2648         pp(TRUE)
       
  2649         promptgroup("70 - Alarm")
       
  2650         menu(menuAlarmSevr)
       
  2651         interest(1)
       
  2652     }
       
  2653     field(ZNAM, DBF_STRING) {
       
  2654         prompt("Zero Name")
       
  2655         size(26)
       
  2656         pp(TRUE)
  5319         promptgroup("80 - Display")
  2657         promptgroup("80 - Display")
  5320         interest(1)
  2658         interest(1)
  5321         prompt("Post Value Monitors")
  2659         prop(YES)
  5322     }
  2660     }
  5323     field(APST, DBF_MENU) {
  2661     field(ONAM, DBF_STRING) {
  5324         menu(stringinPOST)
       
  5325         interest(1)
       
  5326         promptgroup("80 - Display")
  2662         promptgroup("80 - Display")
  5327         prompt("Post Archive Monitors")
  2663         pp(TRUE)
       
  2664         interest(1)
       
  2665         prop(YES)
       
  2666         prompt("One Name")
       
  2667         size(26)
       
  2668     }
       
  2669     field(RVAL, DBF_ULONG) {
       
  2670         prompt("Raw Value")
       
  2671         pp(TRUE)
       
  2672     }
       
  2673     field(ORAW, DBF_ULONG) {
       
  2674         interest(3)
       
  2675         special(SPC_NOMOD)
       
  2676         prompt("prev Raw Value")
       
  2677     }
       
  2678     field(MASK, DBF_ULONG) {
       
  2679         prompt("Hardware Mask")
       
  2680         special(SPC_NOMOD)
       
  2681         interest(1)
       
  2682     }
       
  2683     field(LALM, DBF_USHORT) {
       
  2684         interest(3)
       
  2685         special(SPC_NOMOD)
       
  2686         prompt("Last Value Alarmed")
       
  2687     }
       
  2688     field(MLST, DBF_USHORT) {
       
  2689         interest(3)
       
  2690         special(SPC_NOMOD)
       
  2691         prompt("Last Value Monitored")
  5328     }
  2692     }
  5329     field(SIOL, DBF_INLINK) {
  2693     field(SIOL, DBF_INLINK) {
       
  2694         prompt("Simulation Input Link")
  5330         promptgroup("90 - Simulate")
  2695         promptgroup("90 - Simulate")
  5331         interest(1)
  2696         interest(1)
  5332         prompt("Simulation Input Link")
  2697     }
  5333     }
  2698     field(SVAL, DBF_ULONG) {
  5334     field(SVAL, DBF_STRING) {
       
  5335         prompt("Simulation Value")
  2699         prompt("Simulation Value")
  5336         pp(TRUE)
       
  5337         size(40)
       
  5338     }
  2700     }
  5339     field(SIML, DBF_INLINK) {
  2701     field(SIML, DBF_INLINK) {
  5340         interest(1)
       
  5341         promptgroup("90 - Simulate")
  2702         promptgroup("90 - Simulate")
       
  2703         interest(1)
  5342         prompt("Simulation Mode Link")
  2704         prompt("Simulation Mode Link")
  5343     }
  2705     }
  5344     field(SIMM, DBF_MENU) {
  2706     field(SIMM, DBF_MENU) {
  5345         interest(1)
       
  5346         special(SPC_MOD)
       
  5347         prompt("Simulation Mode")
  2707         prompt("Simulation Mode")
  5348         menu(menuYesNo)
  2708         special(SPC_MOD)
       
  2709         menu(menuSimm)
       
  2710         interest(1)
  5349     }
  2711     }
  5350     field(SIMS, DBF_MENU) {
  2712     field(SIMS, DBF_MENU) {
  5351         menu(menuAlarmSevr)
  2713         menu(menuAlarmSevr)
       
  2714         interest(2)
       
  2715         promptgroup("90 - Simulate")
  5352         prompt("Simulation Mode Severity")
  2716         prompt("Simulation Mode Severity")
       
  2717     }
       
  2718     field(OLDSIMM, DBF_MENU) {
       
  2719         prompt("Prev. Simulation Mode")
       
  2720         menu(menuSimm)
       
  2721         interest(4)
       
  2722         special(SPC_NOMOD)
       
  2723     }
       
  2724     field(SSCN, DBF_MENU) {
       
  2725         prompt("Sim. Mode Scan")
       
  2726         initial("65535")
  5353         promptgroup("90 - Simulate")
  2727         promptgroup("90 - Simulate")
  5354         interest(2)
  2728         menu(menuScan)
  5355     }
  2729         interest(1)
  5356     field(OLDSIMM, DBF_MENU) {
  2730     }
  5357         menu(menuSimm)
  2731     field(SDLY, DBF_DOUBLE) {
  5358         prompt("Prev. Simulation Mode")
       
  5359         special(SPC_NOMOD)
       
  5360         interest(4)
       
  5361     }
       
  5362     field(SSCN, DBF_MENU) {
       
  5363         initial("65535")
       
  5364         interest(1)
       
  5365         promptgroup("90 - Simulate")
  2732         promptgroup("90 - Simulate")
  5366         prompt("Sim. Mode Scan")
  2733         interest(2)
  5367         menu(menuScan)
       
  5368     }
       
  5369     field(SDLY, DBF_DOUBLE) {
       
  5370         prompt("Sim. Mode Async Delay")
  2734         prompt("Sim. Mode Async Delay")
  5371         promptgroup("90 - Simulate")
       
  5372         interest(2)
       
  5373         initial("-1.0")
  2735         initial("-1.0")
  5374     }
  2736     }
  5375     field(SIMPVT, DBF_NOACCESS) {
  2737     field(SIMPVT, DBF_NOACCESS) {
       
  2738         extra("CALLBACK            *simpvt")
  5376         prompt("Sim. Mode Private")
  2739         prompt("Sim. Mode Private")
  5377         interest(4)
  2740         interest(4)
  5378         special(SPC_NOMOD)
  2741         special(SPC_NOMOD)
  5379         extra("CALLBACK            *simpvt")
       
  5380     }
  2742     }
  5381 }
  2743 }
  5382 device(stringin, CONSTANT, devSiSoft, "Soft Channel")
  2744 device(bi, CONSTANT, devBiSoft, "Soft Channel")
  5383 device(stringin, CONSTANT, devSiSoftCallback, "Async Soft Channel")
  2745 device(bi, CONSTANT, devBiSoftRaw, "Raw Soft Channel")
  5384 device(stringin, INST_IO, devTimestampSI, "Soft Timestamp")
  2746 device(bi, CONSTANT, devBiSoftCallback, "Async Soft Channel")
  5385 device(stringin, INST_IO, devSiGeneralTime, "General Time")
  2747 device(bi, INST_IO, devBiDbState, "Db State")
  5386 device(stringin, INST_IO, devSiEnviron, "getenv")
  2748 device(bi, INST_IO, asynBiInt32, "asynInt32")
  5387 device(stringin, INST_IO, asynSiOctetCmdResponse, "asynOctetCmdResponse")
  2749 device(bi, INST_IO, asynBiUInt32Digital, "asynUInt32Digital")
  5388 device(stringin, INST_IO, asynSiOctetWriteRead, "asynOctetWriteRead")
  2750 device(bi, INST_IO, devbiStream, "stream")
  5389 device(stringin, INST_IO, asynSiOctetRead, "asynOctetRead")
  2751 device(bi, INST_IO, devBiStrParm, "asyn bi stringParm")
  5390 device(stringin, INST_IO, devstringinStream, "stream")
  2752 device(bi, INST_IO, devBiMPC, "asyn MPC")
  5391 device(stringin, INST_IO, devSiStrParm, "asyn si stringParm")
  2753 device(bi, GPIB_IO, devBiGP307Gpib, "Vg307 GPIB Instrument")
  5392 device(stringin, INST_IO, devSiMPC, "asyn MPC")
  2754 device(bi, INST_IO, devBiTelevac, "asyn Televac")
  5393 device(stringin, GPIB_IO, devSiGP307Gpib, "Vg307 GPIB Instrument")
  2755 device(bi, INST_IO, devBiTPG261, "asyn TPG261")
  5394 device(stringin, INST_IO, devSiTPG261, "asyn TPG261")
  2756 recordtype(scalcout) {
  5395 recordtype(calc) {
       
  5396     %#include "epicsTypes.h"
  2757     %#include "epicsTypes.h"
  5397     %#include "link.h"
  2758     %#include "link.h"
  5398     %#include "epicsMutex.h"
  2759     %#include "epicsMutex.h"
  5399     %#include "ellLib.h"
  2760     %#include "ellLib.h"
  5400     %#include "epicsTime.h"
  2761     %#include "epicsTime.h"
  5401     %#include "postfix.h"
       
  5402     field(NAME, DBF_STRING) {
  2762     field(NAME, DBF_STRING) {
       
  2763         size(61)
  5403         prompt("Record Name")
  2764         prompt("Record Name")
  5404         special(SPC_NOMOD)
  2765         special(SPC_NOMOD)
  5405         size(61)
       
  5406     }
  2766     }
  5407     field(DESC, DBF_STRING) {
  2767     field(DESC, DBF_STRING) {
  5408         prompt("Descriptor")
  2768         prompt("Descriptor")
  5409         promptgroup("10 - Common")
       
  5410         size(41)
  2769         size(41)
       
  2770         promptgroup("10 - Common")
  5411     }
  2771     }
  5412     field(ASG, DBF_STRING) {
  2772     field(ASG, DBF_STRING) {
       
  2773         promptgroup("10 - Common")
       
  2774         special(SPC_AS)
       
  2775         prompt("Access Security Group")
  5413         size(29)
  2776         size(29)
  5414         prompt("Access Security Group")
       
  5415         promptgroup("10 - Common")
       
  5416         special(SPC_AS)
       
  5417     }
  2777     }
  5418     field(SCAN, DBF_MENU) {
  2778     field(SCAN, DBF_MENU) {
  5419         menu(menuScan)
       
  5420         prompt("Scan Mechanism")
  2779         prompt("Scan Mechanism")
  5421         special(SPC_SCAN)
  2780         special(SPC_SCAN)
  5422         interest(1)
  2781         interest(1)
       
  2782         menu(menuScan)
  5423         promptgroup("20 - Scan")
  2783         promptgroup("20 - Scan")
  5424     }
  2784     }
  5425     field(PINI, DBF_MENU) {
  2785     field(PINI, DBF_MENU) {
  5426         menu(menuPini)
  2786         menu(menuPini)
       
  2787         interest(1)
       
  2788         promptgroup("20 - Scan")
  5427         prompt("Process at iocInit")
  2789         prompt("Process at iocInit")
  5428         interest(1)
       
  5429         promptgroup("20 - Scan")
       
  5430     }
  2790     }
  5431     field(PHAS, DBF_SHORT) {
  2791     field(PHAS, DBF_SHORT) {
  5432         promptgroup("20 - Scan")
       
  5433         interest(1)
       
  5434         special(SPC_SCAN)
  2792         special(SPC_SCAN)
       
  2793         interest(1)
       
  2794         promptgroup("20 - Scan")
  5435         prompt("Scan Phase")
  2795         prompt("Scan Phase")
  5436     }
  2796     }
  5437     field(EVNT, DBF_STRING) {
  2797     field(EVNT, DBF_STRING) {
       
  2798         interest(1)
       
  2799         special(SPC_SCAN)
       
  2800         promptgroup("20 - Scan")
  5438         size(40)
  2801         size(40)
  5439         interest(1)
       
  5440         promptgroup("20 - Scan")
       
  5441         special(SPC_SCAN)
       
  5442         prompt("Event Name")
  2802         prompt("Event Name")
  5443     }
  2803     }
  5444     field(TSE, DBF_SHORT) {
  2804     field(TSE, DBF_SHORT) {
  5445         promptgroup("20 - Scan")
       
  5446         interest(1)
       
  5447         prompt("Time Stamp Event")
  2805         prompt("Time Stamp Event")
       
  2806         interest(1)
       
  2807         promptgroup("20 - Scan")
  5448     }
  2808     }
  5449     field(TSEL, DBF_INLINK) {
  2809     field(TSEL, DBF_INLINK) {
       
  2810         promptgroup("20 - Scan")
       
  2811         interest(1)
  5450         prompt("Time Stamp Link")
  2812         prompt("Time Stamp Link")
  5451         promptgroup("20 - Scan")
       
  5452         interest(1)
       
  5453     }
  2813     }
  5454     field(DTYP, DBF_DEVICE) {
  2814     field(DTYP, DBF_DEVICE) {
  5455         promptgroup("10 - Common")
       
  5456         interest(1)
       
  5457         prompt("Device Type")
  2815         prompt("Device Type")
       
  2816         promptgroup("10 - Common")
       
  2817         interest(1)
  5458     }
  2818     }
  5459     field(DISV, DBF_SHORT) {
  2819     field(DISV, DBF_SHORT) {
  5460         promptgroup("20 - Scan")
  2820         promptgroup("20 - Scan")
  5461         prompt("Disable Value")
  2821         prompt("Disable Value")
  5462         initial("1")
  2822         initial("1")
  5464     field(DISA, DBF_SHORT) {
  2824     field(DISA, DBF_SHORT) {
  5465         prompt("Disable")
  2825         prompt("Disable")
  5466     }
  2826     }
  5467     field(SDIS, DBF_INLINK) {
  2827     field(SDIS, DBF_INLINK) {
  5468         prompt("Scanning Disable")
  2828         prompt("Scanning Disable")
  5469         promptgroup("20 - Scan")
  2829         interest(1)
  5470         interest(1)
  2830         promptgroup("20 - Scan")
  5471     }
  2831     }
  5472     field(MLOK, DBF_NOACCESS) {
  2832     field(MLOK, DBF_NOACCESS) {
       
  2833         interest(4)
       
  2834         special(SPC_NOMOD)
       
  2835         prompt("Monitor lock")
  5473         extra("epicsMutexId        mlok")
  2836         extra("epicsMutexId        mlok")
  5474         prompt("Monitor lock")
       
  5475         special(SPC_NOMOD)
       
  5476         interest(4)
       
  5477     }
  2837     }
  5478     field(MLIS, DBF_NOACCESS) {
  2838     field(MLIS, DBF_NOACCESS) {
       
  2839         prompt("Monitor List")
  5479         extra("ELLLIST             mlis")
  2840         extra("ELLLIST             mlis")
  5480         special(SPC_NOMOD)
  2841         special(SPC_NOMOD)
  5481         interest(4)
  2842         interest(4)
  5482         prompt("Monitor List")
       
  5483     }
  2843     }
  5484     field(BKLNK, DBF_NOACCESS) {
  2844     field(BKLNK, DBF_NOACCESS) {
  5485         prompt("Backwards link tracking")
  2845         prompt("Backwards link tracking")
  5486         special(SPC_NOMOD)
       
  5487         interest(4)
       
  5488         extra("ELLLIST             bklnk")
  2846         extra("ELLLIST             bklnk")
       
  2847         special(SPC_NOMOD)
       
  2848         interest(4)
  5489     }
  2849     }
  5490     field(DISP, DBF_UCHAR) {
  2850     field(DISP, DBF_UCHAR) {
  5491         prompt("Disable putField")
  2851         prompt("Disable putField")
  5492     }
  2852     }
  5493     field(PROC, DBF_UCHAR) {
  2853     field(PROC, DBF_UCHAR) {
  5494         prompt("Force Processing")
  2854         prompt("Force Processing")
  5495         interest(3)
  2855         interest(3)
  5496         pp(TRUE)
  2856         pp(TRUE)
  5497     }
  2857     }
  5498     field(STAT, DBF_MENU) {
  2858     field(STAT, DBF_MENU) {
       
  2859         menu(menuAlarmStat)
  5499         special(SPC_NOMOD)
  2860         special(SPC_NOMOD)
  5500         prompt("Alarm Status")
  2861         prompt("Alarm Status")
       
  2862         initial("UDF")
       
  2863     }
       
  2864     field(SEVR, DBF_MENU) {
       
  2865         prompt("Alarm Severity")
       
  2866         special(SPC_NOMOD)
       
  2867         menu(menuAlarmSevr)
       
  2868     }
       
  2869     field(NSTA, DBF_MENU) {
       
  2870         prompt("New Alarm Status")
  5501         menu(menuAlarmStat)
  2871         menu(menuAlarmStat)
  5502         initial("UDF")
  2872         interest(2)
  5503     }
  2873         special(SPC_NOMOD)
  5504     field(SEVR, DBF_MENU) {
       
  5505         menu(menuAlarmSevr)
       
  5506         special(SPC_NOMOD)
       
  5507         prompt("Alarm Severity")
       
  5508     }
       
  5509     field(NSTA, DBF_MENU) {
       
  5510         menu(menuAlarmStat)
       
  5511         special(SPC_NOMOD)
       
  5512         interest(2)
       
  5513         prompt("New Alarm Status")
       
  5514     }
  2874     }
  5515     field(NSEV, DBF_MENU) {
  2875     field(NSEV, DBF_MENU) {
       
  2876         special(SPC_NOMOD)
       
  2877         interest(2)
  5516         menu(menuAlarmSevr)
  2878         menu(menuAlarmSevr)
  5517         prompt("New Alarm Severity")
  2879         prompt("New Alarm Severity")
  5518         interest(2)
       
  5519         special(SPC_NOMOD)
       
  5520     }
  2880     }
  5521     field(ACKS, DBF_MENU) {
  2881     field(ACKS, DBF_MENU) {
  5522         interest(2)
  2882         special(SPC_NOMOD)
  5523         special(SPC_NOMOD)
  2883         menu(menuAlarmSevr)
       
  2884         interest(2)
  5524         prompt("Alarm Ack Severity")
  2885         prompt("Alarm Ack Severity")
  5525         menu(menuAlarmSevr)
       
  5526     }
  2886     }
  5527     field(ACKT, DBF_MENU) {
  2887     field(ACKT, DBF_MENU) {
       
  2888         promptgroup("70 - Alarm")
       
  2889         special(SPC_NOMOD)
       
  2890         interest(2)
       
  2891         menu(menuYesNo)
  5528         prompt("Alarm Ack Transient")
  2892         prompt("Alarm Ack Transient")
  5529         interest(2)
       
  5530         special(SPC_NOMOD)
       
  5531         promptgroup("70 - Alarm")
       
  5532         menu(menuYesNo)
       
  5533         initial("YES")
  2893         initial("YES")
  5534     }
  2894     }
  5535     field(DISS, DBF_MENU) {
  2895     field(DISS, DBF_MENU) {
  5536         prompt("Disable Alarm Sevrty")
  2896         prompt("Disable Alarm Sevrty")
  5537         interest(1)
  2897         promptgroup("70 - Alarm")
  5538         promptgroup("70 - Alarm")
  2898         menu(menuAlarmSevr)
  5539         menu(menuAlarmSevr)
  2899         interest(1)
  5540     }
  2900     }
  5541     field(LCNT, DBF_UCHAR) {
  2901     field(LCNT, DBF_UCHAR) {
  5542         interest(2)
       
  5543         special(SPC_NOMOD)
       
  5544         prompt("Lock Count")
  2902         prompt("Lock Count")
       
  2903         interest(2)
       
  2904         special(SPC_NOMOD)
  5545     }
  2905     }
  5546     field(PACT, DBF_UCHAR) {
  2906     field(PACT, DBF_UCHAR) {
  5547         interest(1)
       
  5548         special(SPC_NOMOD)
       
  5549         prompt("Record active")
  2907         prompt("Record active")
       
  2908         interest(1)
       
  2909         special(SPC_NOMOD)
  5550     }
  2910     }
  5551     field(PUTF, DBF_UCHAR) {
  2911     field(PUTF, DBF_UCHAR) {
  5552         interest(1)
  2912         interest(1)
  5553         special(SPC_NOMOD)
  2913         special(SPC_NOMOD)
  5554         prompt("dbPutField process")
  2914         prompt("dbPutField process")
  5555     }
  2915     }
  5556     field(RPRO, DBF_UCHAR) {
  2916     field(RPRO, DBF_UCHAR) {
  5557         interest(1)
       
  5558         special(SPC_NOMOD)
       
  5559         prompt("Reprocess ")
  2917         prompt("Reprocess ")
       
  2918         special(SPC_NOMOD)
       
  2919         interest(1)
  5560     }
  2920     }
  5561     field(ASP, DBF_NOACCESS) {
  2921     field(ASP, DBF_NOACCESS) {
       
  2922         special(SPC_NOMOD)
       
  2923         interest(4)
       
  2924         extra("struct asgMember    *asp")
  5562         prompt("Access Security Pvt")
  2925         prompt("Access Security Pvt")
  5563         special(SPC_NOMOD)
       
  5564         interest(4)
       
  5565         extra("struct asgMember    *asp")
       
  5566     }
  2926     }
  5567     field(PPN, DBF_NOACCESS) {
  2927     field(PPN, DBF_NOACCESS) {
       
  2928         special(SPC_NOMOD)
       
  2929         interest(4)
       
  2930         extra("struct processNotify *ppn")
  5568         prompt("pprocessNotify")
  2931         prompt("pprocessNotify")
  5569         special(SPC_NOMOD)
       
  5570         interest(4)
       
  5571         extra("struct processNotify *ppn")
       
  5572     }
  2932     }
  5573     field(PPNR, DBF_NOACCESS) {
  2933     field(PPNR, DBF_NOACCESS) {
  5574         special(SPC_NOMOD)
  2934         special(SPC_NOMOD)
  5575         interest(4)
  2935         interest(4)
  5576         prompt("pprocessNotifyRecord")
  2936         prompt("pprocessNotifyRecord")
  5577         extra("struct processNotifyRecord *ppnr")
  2937         extra("struct processNotifyRecord *ppnr")
  5578     }
  2938     }
  5579     field(SPVT, DBF_NOACCESS) {
  2939     field(SPVT, DBF_NOACCESS) {
  5580         extra("struct scan_element *spvt")
  2940         extra("struct scan_element *spvt")
  5581         prompt("Scan Private")
  2941         prompt("Scan Private")
  5582         special(SPC_NOMOD)
  2942         interest(4)
  5583         interest(4)
  2943         special(SPC_NOMOD)
  5584     }
  2944     }
  5585     field(RSET, DBF_NOACCESS) {
  2945     field(RSET, DBF_NOACCESS) {
  5586         interest(4)
  2946         special(SPC_NOMOD)
  5587         special(SPC_NOMOD)
  2947         interest(4)
  5588         prompt("Address of RSET")
  2948         prompt("Address of RSET")
  5589         extra("struct typed_rset   *rset")
  2949         extra("struct typed_rset   *rset")
  5590     }
  2950     }
  5591     field(DSET, DBF_NOACCESS) {
  2951     field(DSET, DBF_NOACCESS) {
  5592         special(SPC_NOMOD)
       
  5593         interest(4)
       
  5594         prompt("DSET address")
  2952         prompt("DSET address")
  5595         extra("struct dset         *dset")
  2953         extra("struct dset         *dset")
       
  2954         interest(4)
       
  2955         special(SPC_NOMOD)
  5596     }
  2956     }
  5597     field(DPVT, DBF_NOACCESS) {
  2957     field(DPVT, DBF_NOACCESS) {
       
  2958         prompt("Device Private")
  5598         extra("void                *dpvt")
  2959         extra("void                *dpvt")
  5599         prompt("Device Private")
  2960         interest(4)
  5600         special(SPC_NOMOD)
  2961         special(SPC_NOMOD)
  5601         interest(4)
       
  5602     }
  2962     }
  5603     field(RDES, DBF_NOACCESS) {
  2963     field(RDES, DBF_NOACCESS) {
       
  2964         interest(4)
       
  2965         special(SPC_NOMOD)
       
  2966         extra("struct dbRecordType *rdes")
  5604         prompt("Address of dbRecordType")
  2967         prompt("Address of dbRecordType")
  5605         interest(4)
       
  5606         special(SPC_NOMOD)
       
  5607         extra("struct dbRecordType *rdes")
       
  5608     }
  2968     }
  5609     field(LSET, DBF_NOACCESS) {
  2969     field(LSET, DBF_NOACCESS) {
       
  2970         prompt("Lock Set")
  5610         extra("struct lockRecord   *lset")
  2971         extra("struct lockRecord   *lset")
  5611         interest(4)
  2972         special(SPC_NOMOD)
  5612         special(SPC_NOMOD)
  2973         interest(4)
  5613         prompt("Lock Set")
       
  5614     }
  2974     }
  5615     field(PRIO, DBF_MENU) {
  2975     field(PRIO, DBF_MENU) {
       
  2976         promptgroup("20 - Scan")
       
  2977         special(SPC_SCAN)
  5616         menu(menuPriority)
  2978         menu(menuPriority)
  5617         interest(1)
  2979         interest(1)
  5618         special(SPC_SCAN)
       
  5619         promptgroup("20 - Scan")
       
  5620         prompt("Scheduling Priority")
  2980         prompt("Scheduling Priority")
  5621     }
  2981     }
  5622     field(TPRO, DBF_UCHAR) {
  2982     field(TPRO, DBF_UCHAR) {
  5623         prompt("Trace Processing")
  2983         prompt("Trace Processing")
  5624     }
  2984     }
  5625     field(BKPT, DBF_NOACCESS) {
  2985     field(BKPT, DBF_NOACCESS) {
       
  2986         extra("char                bkpt")
  5626         prompt("Break Point")
  2987         prompt("Break Point")
  5627         special(SPC_NOMOD)
  2988         special(SPC_NOMOD)
  5628         interest(1)
  2989         interest(1)
  5629         extra("char                bkpt")
       
  5630     }
  2990     }
  5631     field(UDF, DBF_UCHAR) {
  2991     field(UDF, DBF_UCHAR) {
       
  2992         interest(1)
       
  2993         promptgroup("10 - Common")
       
  2994         pp(TRUE)
       
  2995         initial("1")
  5632         prompt("Undefined")
  2996         prompt("Undefined")
  5633         interest(1)
       
  5634         promptgroup("10 - Common")
       
  5635         pp(TRUE)
       
  5636         initial("1")
       
  5637     }
  2997     }
  5638     field(UDFS, DBF_MENU) {
  2998     field(UDFS, DBF_MENU) {
       
  2999         promptgroup("70 - Alarm")
       
  3000         menu(menuAlarmSevr)
       
  3001         interest(1)
       
  3002         prompt("Undefined Alarm Sevrty")
  5639         initial("INVALID")
  3003         initial("INVALID")
  5640         prompt("Undefined Alarm Sevrty")
       
  5641         interest(1)
       
  5642         promptgroup("70 - Alarm")
       
  5643         menu(menuAlarmSevr)
       
  5644     }
  3004     }
  5645     field(TIME, DBF_NOACCESS) {
  3005     field(TIME, DBF_NOACCESS) {
       
  3006         interest(2)
       
  3007         special(SPC_NOMOD)
  5646         extra("epicsTimeStamp      time")
  3008         extra("epicsTimeStamp      time")
  5647         interest(2)
       
  5648         special(SPC_NOMOD)
       
  5649         prompt("Time")
  3009         prompt("Time")
  5650     }
  3010     }
  5651     field(FLNK, DBF_FWDLINK) {
  3011     field(FLNK, DBF_FWDLINK) {
  5652         interest(1)
       
  5653         promptgroup("20 - Scan")
       
  5654         prompt("Forward Process Link")
  3012         prompt("Forward Process Link")
       
  3013         promptgroup("20 - Scan")
       
  3014         interest(1)
       
  3015     }
       
  3016     field(VERS, DBF_DOUBLE) {
       
  3017         initial("1")
       
  3018         prompt("Code Version")
       
  3019         special(SPC_NOMOD)
       
  3020     }
       
  3021     field(RPVT, DBF_NOACCESS) {
       
  3022         special(SPC_NOMOD)
       
  3023         interest(4)
       
  3024         extra("void *rpvt")
       
  3025         size(4)
       
  3026         prompt("Record Private")
  5655     }
  3027     }
  5656     field(VAL, DBF_DOUBLE) {
  3028     field(VAL, DBF_DOUBLE) {
       
  3029         prompt("Result")
  5657         asl(ASL0)
  3030         asl(ASL0)
  5658         prompt("Result")
  3031     }
  5659         promptgroup("50 - Output")
  3032     field(SVAL, DBF_STRING) {
       
  3033         prompt("String result")
       
  3034         size(40)
       
  3035         asl(ASL0)
       
  3036     }
       
  3037     field(PVAL, DBF_DOUBLE) {
       
  3038         prompt("Previous Value")
       
  3039     }
       
  3040     field(PSVL, DBF_STRING) {
       
  3041         size(40)
       
  3042         prompt("Previous string result")
       
  3043         special(SPC_NOMOD)
  5660     }
  3044     }
  5661     field(CALC, DBF_STRING) {
  3045     field(CALC, DBF_STRING) {
  5662         pp(TRUE)
  3046         pp(TRUE)
  5663         initial("0")
  3047         promptgroup("30 - Action")
       
  3048         special(SPC_MOD)
       
  3049         prompt("Calculation")
  5664         size(80)
  3050         size(80)
  5665         prompt("Calculation")
  3051     }
       
  3052     field(CLCV, DBF_LONG) {
       
  3053         interest(1)
       
  3054         prompt("CALC Valid")
       
  3055     }
       
  3056     field(INPA, DBF_INLINK) {
       
  3057         prompt("Input A")
  5666         promptgroup("30 - Action")
  3058         promptgroup("30 - Action")
  5667         special(SPC_CALC)
  3059         interest(1)
  5668     }
  3060         special(SPC_MOD)
  5669     field(INPA, DBF_INLINK) {
       
  5670         promptgroup("41 - Input A-F")
       
  5671         interest(1)
       
  5672         prompt("Input A")
       
  5673     }
  3061     }
  5674     field(INPB, DBF_INLINK) {
  3062     field(INPB, DBF_INLINK) {
  5675         promptgroup("41 - Input A-F")
  3063         promptgroup("30 - Action")
  5676         interest(1)
  3064         interest(1)
       
  3065         special(SPC_MOD)
  5677         prompt("Input B")
  3066         prompt("Input B")
  5678     }
  3067     }
  5679     field(INPC, DBF_INLINK) {
  3068     field(INPC, DBF_INLINK) {
  5680         promptgroup("41 - Input A-F")
       
  5681         interest(1)
       
  5682         prompt("Input C")
  3069         prompt("Input C")
       
  3070         special(SPC_MOD)
       
  3071         interest(1)
       
  3072         promptgroup("30 - Action")
  5683     }
  3073     }
  5684     field(INPD, DBF_INLINK) {
  3074     field(INPD, DBF_INLINK) {
  5685         interest(1)
  3075         promptgroup("30 - Action")
  5686         promptgroup("41 - Input A-F")
  3076         special(SPC_MOD)
       
  3077         interest(1)
  5687         prompt("Input D")
  3078         prompt("Input D")
  5688     }
  3079     }
  5689     field(INPE, DBF_INLINK) {
  3080     field(INPE, DBF_INLINK) {
  5690         interest(1)
  3081         promptgroup("30 - Action")
  5691         promptgroup("41 - Input A-F")
  3082         special(SPC_MOD)
       
  3083         interest(1)
  5692         prompt("Input E")
  3084         prompt("Input E")
  5693     }
  3085     }
  5694     field(INPF, DBF_INLINK) {
  3086     field(INPF, DBF_INLINK) {
       
  3087         special(SPC_MOD)
       
  3088         interest(1)
       
  3089         promptgroup("30 - Action")
  5695         prompt("Input F")
  3090         prompt("Input F")
  5696         interest(1)
       
  5697         promptgroup("41 - Input A-F")
       
  5698     }
  3091     }
  5699     field(INPG, DBF_INLINK) {
  3092     field(INPG, DBF_INLINK) {
  5700         promptgroup("42 - Input G-L")
  3093         promptgroup("30 - Action")
       
  3094         special(SPC_MOD)
  5701         interest(1)
  3095         interest(1)
  5702         prompt("Input G")
  3096         prompt("Input G")
  5703     }
  3097     }
  5704     field(INPH, DBF_INLINK) {
  3098     field(INPH, DBF_INLINK) {
       
  3099         promptgroup("30 - Action")
       
  3100         interest(1)
       
  3101         special(SPC_MOD)
  5705         prompt("Input H")
  3102         prompt("Input H")
  5706         interest(1)
       
  5707         promptgroup("42 - Input G-L")
       
  5708     }
  3103     }
  5709     field(INPI, DBF_INLINK) {
  3104     field(INPI, DBF_INLINK) {
  5710         prompt("Input I")
  3105         prompt("Input I")
  5711         interest(1)
  3106         interest(1)
  5712         promptgroup("42 - Input G-L")
  3107         special(SPC_MOD)
       
  3108         promptgroup("30 - Action")
  5713     }
  3109     }
  5714     field(INPJ, DBF_INLINK) {
  3110     field(INPJ, DBF_INLINK) {
       
  3111         promptgroup("30 - Action")
       
  3112         special(SPC_MOD)
       
  3113         interest(1)
  5715         prompt("Input J")
  3114         prompt("Input J")
  5716         promptgroup("42 - Input G-L")
       
  5717         interest(1)
       
  5718     }
  3115     }
  5719     field(INPK, DBF_INLINK) {
  3116     field(INPK, DBF_INLINK) {
  5720         interest(1)
       
  5721         promptgroup("42 - Input G-L")
       
  5722         prompt("Input K")
  3117         prompt("Input K")
       
  3118         promptgroup("30 - Action")
       
  3119         special(SPC_MOD)
       
  3120         interest(1)
  5723     }
  3121     }
  5724     field(INPL, DBF_INLINK) {
  3122     field(INPL, DBF_INLINK) {
  5725         interest(1)
       
  5726         promptgroup("42 - Input G-L")
       
  5727         prompt("Input L")
  3123         prompt("Input L")
       
  3124         promptgroup("30 - Action")
       
  3125         special(SPC_MOD)
       
  3126         interest(1)
       
  3127     }
       
  3128     field(INAA, DBF_INLINK) {
       
  3129         promptgroup("30 - Action")
       
  3130         special(SPC_MOD)
       
  3131         interest(1)
       
  3132         prompt("String input AA")
       
  3133     }
       
  3134     field(INBB, DBF_INLINK) {
       
  3135         prompt("String input BB")
       
  3136         promptgroup("30 - Action")
       
  3137         special(SPC_MOD)
       
  3138         interest(1)
       
  3139     }
       
  3140     field(INCC, DBF_INLINK) {
       
  3141         promptgroup("30 - Action")
       
  3142         special(SPC_MOD)
       
  3143         interest(1)
       
  3144         prompt("String input CC")
       
  3145     }
       
  3146     field(INDD, DBF_INLINK) {
       
  3147         prompt("String input DD")
       
  3148         promptgroup("30 - Action")
       
  3149         interest(1)
       
  3150         special(SPC_MOD)
       
  3151     }
       
  3152     field(INEE, DBF_INLINK) {
       
  3153         promptgroup("30 - Action")
       
  3154         special(SPC_MOD)
       
  3155         interest(1)
       
  3156         prompt("String input EE")
       
  3157     }
       
  3158     field(INFF, DBF_INLINK) {
       
  3159         special(SPC_MOD)
       
  3160         interest(1)
       
  3161         promptgroup("30 - Action")
       
  3162         prompt("String input FF")
       
  3163     }
       
  3164     field(INGG, DBF_INLINK) {
       
  3165         promptgroup("30 - Action")
       
  3166         interest(1)
       
  3167         special(SPC_MOD)
       
  3168         prompt("String input GG")
       
  3169     }
       
  3170     field(INHH, DBF_INLINK) {
       
  3171         promptgroup("30 - Action")
       
  3172         interest(1)
       
  3173         special(SPC_MOD)
       
  3174         prompt("String input HH")
       
  3175     }
       
  3176     field(INII, DBF_INLINK) {
       
  3177         prompt("String input II")
       
  3178         promptgroup("30 - Action")
       
  3179         interest(1)
       
  3180         special(SPC_MOD)
       
  3181     }
       
  3182     field(INJJ, DBF_INLINK) {
       
  3183         prompt("String input JJ")
       
  3184         interest(1)
       
  3185         special(SPC_MOD)
       
  3186         promptgroup("30 - Action")
       
  3187     }
       
  3188     field(INKK, DBF_INLINK) {
       
  3189         interest(1)
       
  3190         special(SPC_MOD)
       
  3191         promptgroup("30 - Action")
       
  3192         prompt("String input KK")
       
  3193     }
       
  3194     field(INLL, DBF_INLINK) {
       
  3195         promptgroup("30 - Action")
       
  3196         special(SPC_MOD)
       
  3197         interest(1)
       
  3198         prompt("String input LL")
       
  3199     }
       
  3200     field(OUT, DBF_OUTLINK) {
       
  3201         prompt("Output Link")
       
  3202         special(SPC_MOD)
       
  3203         interest(1)
       
  3204         promptgroup("50 - Output")
       
  3205     }
       
  3206     field(INAV, DBF_MENU) {
       
  3207         special(SPC_NOMOD)
       
  3208         interest(1)
       
  3209         menu(scalcoutINAV)
       
  3210         initial("1")
       
  3211         prompt("INPA PV Status")
       
  3212     }
       
  3213     field(INBV, DBF_MENU) {
       
  3214         prompt("INPB PV Status")
       
  3215         initial("1")
       
  3216         menu(scalcoutINAV)
       
  3217         interest(1)
       
  3218         special(SPC_NOMOD)
       
  3219     }
       
  3220     field(INCV, DBF_MENU) {
       
  3221         special(SPC_NOMOD)
       
  3222         menu(scalcoutINAV)
       
  3223         interest(1)
       
  3224         prompt("INPC PV Status")
       
  3225         initial("1")
       
  3226     }
       
  3227     field(INDV, DBF_MENU) {
       
  3228         special(SPC_NOMOD)
       
  3229         menu(scalcoutINAV)
       
  3230         interest(1)
       
  3231         initial("1")
       
  3232         prompt("INPD PV Status")
       
  3233     }
       
  3234     field(INEV, DBF_MENU) {
       
  3235         prompt("INPE PV Status")
       
  3236         initial("1")
       
  3237         interest(1)
       
  3238         menu(scalcoutINAV)
       
  3239         special(SPC_NOMOD)
       
  3240     }
       
  3241     field(INFV, DBF_MENU) {
       
  3242         menu(scalcoutINAV)
       
  3243         interest(1)
       
  3244         special(SPC_NOMOD)
       
  3245         initial("1")
       
  3246         prompt("INPF PV Status")
       
  3247     }
       
  3248     field(INGV, DBF_MENU) {
       
  3249         initial("1")
       
  3250         prompt("INPG PV Status")
       
  3251         interest(1)
       
  3252         menu(scalcoutINAV)
       
  3253         special(SPC_NOMOD)
       
  3254     }
       
  3255     field(INHV, DBF_MENU) {
       
  3256         prompt("INPH PV Status")
       
  3257         initial("1")
       
  3258         interest(1)
       
  3259         menu(scalcoutINAV)
       
  3260         special(SPC_NOMOD)
       
  3261     }
       
  3262     field(INIV, DBF_MENU) {
       
  3263         interest(1)
       
  3264         menu(scalcoutINAV)
       
  3265         special(SPC_NOMOD)
       
  3266         initial("1")
       
  3267         prompt("INPI PV Status")
       
  3268     }
       
  3269     field(INJV, DBF_MENU) {
       
  3270         initial("1")
       
  3271         prompt("INPJ PV Status")
       
  3272         special(SPC_NOMOD)
       
  3273         menu(scalcoutINAV)
       
  3274         interest(1)
       
  3275     }
       
  3276     field(INKV, DBF_MENU) {
       
  3277         interest(1)
       
  3278         menu(scalcoutINAV)
       
  3279         special(SPC_NOMOD)
       
  3280         initial("1")
       
  3281         prompt("INPK PV Status")
       
  3282     }
       
  3283     field(INLV, DBF_MENU) {
       
  3284         interest(1)
       
  3285         menu(scalcoutINAV)
       
  3286         special(SPC_NOMOD)
       
  3287         prompt("INPL PV Status")
       
  3288         initial("1")
       
  3289     }
       
  3290     field(IAAV, DBF_MENU) {
       
  3291         interest(1)
       
  3292         menu(scalcoutINAV)
       
  3293         special(SPC_NOMOD)
       
  3294         initial("1")
       
  3295         prompt("INAA PV Status")
       
  3296     }
       
  3297     field(IBBV, DBF_MENU) {
       
  3298         initial("1")
       
  3299         prompt("INBB PV Status")
       
  3300         special(SPC_NOMOD)
       
  3301         menu(scalcoutINAV)
       
  3302         interest(1)
       
  3303     }
       
  3304     field(ICCV, DBF_MENU) {
       
  3305         initial("1")
       
  3306         prompt("INCC PV Status")
       
  3307         special(SPC_NOMOD)
       
  3308         interest(1)
       
  3309         menu(scalcoutINAV)
       
  3310     }
       
  3311     field(IDDV, DBF_MENU) {
       
  3312         special(SPC_NOMOD)
       
  3313         interest(1)
       
  3314         menu(scalcoutINAV)
       
  3315         initial("1")
       
  3316         prompt("INDD PV Status")
       
  3317     }
       
  3318     field(IEEV, DBF_MENU) {
       
  3319         special(SPC_NOMOD)
       
  3320         interest(1)
       
  3321         menu(scalcoutINAV)
       
  3322         initial("1")
       
  3323         prompt("INEE PV Status")
       
  3324     }
       
  3325     field(IFFV, DBF_MENU) {
       
  3326         interest(1)
       
  3327         menu(scalcoutINAV)
       
  3328         special(SPC_NOMOD)
       
  3329         prompt("INFF PV Status")
       
  3330         initial("1")
       
  3331     }
       
  3332     field(IGGV, DBF_MENU) {
       
  3333         initial("1")
       
  3334         prompt("INGG PV Status")
       
  3335         menu(scalcoutINAV)
       
  3336         interest(1)
       
  3337         special(SPC_NOMOD)
       
  3338     }
       
  3339     field(IHHV, DBF_MENU) {
       
  3340         interest(1)
       
  3341         menu(scalcoutINAV)
       
  3342         special(SPC_NOMOD)
       
  3343         initial("1")
       
  3344         prompt("INHH PV Status")
       
  3345     }
       
  3346     field(IIIV, DBF_MENU) {
       
  3347         interest(1)
       
  3348         menu(scalcoutINAV)
       
  3349         special(SPC_NOMOD)
       
  3350         initial("1")
       
  3351         prompt("INII PV Status")
       
  3352     }
       
  3353     field(IJJV, DBF_MENU) {
       
  3354         special(SPC_NOMOD)
       
  3355         menu(scalcoutINAV)
       
  3356         interest(1)
       
  3357         initial("1")
       
  3358         prompt("INJJ PV Status")
       
  3359     }
       
  3360     field(IKKV, DBF_MENU) {
       
  3361         special(SPC_NOMOD)
       
  3362         menu(scalcoutINAV)
       
  3363         interest(1)
       
  3364         initial("1")
       
  3365         prompt("INKK PV Status")
       
  3366     }
       
  3367     field(ILLV, DBF_MENU) {
       
  3368         interest(1)
       
  3369         menu(scalcoutINAV)
       
  3370         special(SPC_NOMOD)
       
  3371         prompt("INLL PV Status")
       
  3372         initial("1")
       
  3373     }
       
  3374     field(OUTV, DBF_MENU) {
       
  3375         menu(scalcoutINAV)
       
  3376         interest(1)
       
  3377         special(SPC_NOMOD)
       
  3378         prompt("OUT PV Status")
       
  3379     }
       
  3380     field(OOPT, DBF_MENU) {
       
  3381         menu(scalcoutOOPT)
       
  3382         interest(1)
       
  3383         promptgroup("30 - Action")
       
  3384         prompt("Output Execute Opt")
       
  3385     }
       
  3386     field(ODLY, DBF_DOUBLE) {
       
  3387         promptgroup("70 - Alarm")
       
  3388         interest(1)
       
  3389         prompt("Output Execute Delay")
       
  3390         asl(ASL0)
       
  3391     }
       
  3392     field(WAIT, DBF_MENU) {
       
  3393         interest(1)
       
  3394         menu(scalcoutWAIT)
       
  3395         prompt("Wait for completion?")
       
  3396     }
       
  3397     field(DLYA, DBF_USHORT) {
       
  3398         prompt("Output Delay Active")
       
  3399         asl(ASL0)
       
  3400         special(SPC_NOMOD)
       
  3401     }
       
  3402     field(DOPT, DBF_MENU) {
       
  3403         menu(scalcoutDOPT)
       
  3404         interest(1)
       
  3405         promptgroup("30 - Action")
       
  3406         prompt("Output Data Opt")
       
  3407     }
       
  3408     field(OCAL, DBF_STRING) {
       
  3409         promptgroup("30 - Action")
       
  3410         pp(TRUE)
       
  3411         special(SPC_MOD)
       
  3412         prompt("Output Calculation")
       
  3413         size(80)
       
  3414     }
       
  3415     field(OCLV, DBF_LONG) {
       
  3416         prompt("OCAL Valid")
       
  3417         interest(1)
       
  3418     }
       
  3419     field(OEVT, DBF_USHORT) {
       
  3420         prompt("Event To Issue")
       
  3421         asl(ASL0)
       
  3422         promptgroup("30 - Action")
       
  3423     }
       
  3424     field(IVOA, DBF_MENU) {
       
  3425         promptgroup("50 - Output")
       
  3426         menu(menuIvoa)
       
  3427         interest(2)
       
  3428         prompt("INVALID output action")
       
  3429     }
       
  3430     field(IVOV, DBF_DOUBLE) {
       
  3431         prompt("INVALID output value")
       
  3432         interest(2)
       
  3433         promptgroup("50 - Output")
  5728     }
  3434     }
  5729     field(EGU, DBF_STRING) {
  3435     field(EGU, DBF_STRING) {
       
  3436         promptgroup("80 - Display")
       
  3437         interest(1)
       
  3438         prompt("Units Name")
  5730         size(16)
  3439         size(16)
  5731         prop(YES)
  3440     }
  5732         interest(1)
  3441     field(PREC, DBF_SHORT) {
       
  3442         prompt("Display Precision")
  5733         promptgroup("80 - Display")
  3443         promptgroup("80 - Display")
  5734         prompt("Engineering Units")
  3444         interest(1)
  5735     }
       
  5736     field(PREC, DBF_SHORT) {
       
  5737         prop(YES)
       
  5738         promptgroup("80 - Display")
       
  5739         interest(1)
       
  5740         prompt("Display Precision")
       
  5741     }
  3445     }
  5742     field(HOPR, DBF_DOUBLE) {
  3446     field(HOPR, DBF_DOUBLE) {
  5743         prompt("High Operating Rng")
  3447         prompt("High Operating Rng")
       
  3448         interest(1)
  5744         promptgroup("80 - Display")
  3449         promptgroup("80 - Display")
  5745         prop(YES)
       
  5746         interest(1)
       
  5747     }
  3450     }
  5748     field(LOPR, DBF_DOUBLE) {
  3451     field(LOPR, DBF_DOUBLE) {
  5749         prop(YES)
  3452         interest(1)
  5750         promptgroup("80 - Display")
  3453         promptgroup("80 - Display")
  5751         interest(1)
       
  5752         prompt("Low Operating Range")
  3454         prompt("Low Operating Range")
  5753     }
  3455     }
  5754     field(HIHI, DBF_DOUBLE) {
  3456     field(HIHI, DBF_DOUBLE) {
  5755         pp(TRUE)
  3457         promptgroup("70 - Alarm")
       
  3458         pp(TRUE)
       
  3459         interest(1)
  5756         prompt("Hihi Alarm Limit")
  3460         prompt("Hihi Alarm Limit")
  5757         prop(YES)
       
  5758         interest(1)
       
  5759         promptgroup("70 - Alarm")
       
  5760     }
  3461     }
  5761     field(LOLO, DBF_DOUBLE) {
  3462     field(LOLO, DBF_DOUBLE) {
       
  3463         promptgroup("70 - Alarm")
       
  3464         pp(TRUE)
       
  3465         interest(1)
  5762         prompt("Lolo Alarm Limit")
  3466         prompt("Lolo Alarm Limit")
  5763         interest(1)
       
  5764         prop(YES)
       
  5765         promptgroup("70 - Alarm")
       
  5766         pp(TRUE)
       
  5767     }
  3467     }
  5768     field(HIGH, DBF_DOUBLE) {
  3468     field(HIGH, DBF_DOUBLE) {
  5769         prompt("High Alarm Limit")
  3469         prompt("High Alarm Limit")
  5770         prop(YES)
       
  5771         interest(1)
  3470         interest(1)
  5772         promptgroup("70 - Alarm")
  3471         promptgroup("70 - Alarm")
  5773         pp(TRUE)
  3472         pp(TRUE)
  5774     }
  3473     }
  5775     field(LOW, DBF_DOUBLE) {
  3474     field(LOW, DBF_DOUBLE) {
  5776         pp(TRUE)
  3475         promptgroup("70 - Alarm")
       
  3476         pp(TRUE)
       
  3477         interest(1)
  5777         prompt("Low Alarm Limit")
  3478         prompt("Low Alarm Limit")
  5778         prop(YES)
       
  5779         interest(1)
       
  5780         promptgroup("70 - Alarm")
       
  5781     }
  3479     }
  5782     field(HHSV, DBF_MENU) {
  3480     field(HHSV, DBF_MENU) {
  5783         prompt("Hihi Severity")
  3481         prompt("Hihi Severity")
  5784         promptgroup("70 - Alarm")
  3482         menu(menuAlarmSevr)
  5785         prop(YES)
  3483         interest(1)
  5786         interest(1)
  3484         pp(TRUE)
  5787         menu(menuAlarmSevr)
  3485         promptgroup("70 - Alarm")
  5788         pp(TRUE)
       
  5789     }
  3486     }
  5790     field(LLSV, DBF_MENU) {
  3487     field(LLSV, DBF_MENU) {
  5791         pp(TRUE)
       
  5792         prompt("Lolo Severity")
  3488         prompt("Lolo Severity")
  5793         interest(1)
  3489         pp(TRUE)
  5794         prop(YES)
  3490         promptgroup("70 - Alarm")
  5795         promptgroup("70 - Alarm")
  3491         menu(menuAlarmSevr)
  5796         menu(menuAlarmSevr)
  3492         interest(1)
  5797     }
  3493     }
  5798     field(HSV, DBF_MENU) {
  3494     field(HSV, DBF_MENU) {
  5799         pp(TRUE)
  3495         menu(menuAlarmSevr)
  5800         interest(1)
  3496         interest(1)
  5801         prop(YES)
  3497         promptgroup("70 - Alarm")
  5802         promptgroup("70 - Alarm")
  3498         pp(TRUE)
  5803         prompt("High Severity")
  3499         prompt("High Severity")
  5804         menu(menuAlarmSevr)
       
  5805     }
  3500     }
  5806     field(LSV, DBF_MENU) {
  3501     field(LSV, DBF_MENU) {
       
  3502         promptgroup("70 - Alarm")
       
  3503         pp(TRUE)
       
  3504         interest(1)
  5807         menu(menuAlarmSevr)
  3505         menu(menuAlarmSevr)
  5808         prompt("Low Severity")
  3506         prompt("Low Severity")
  5809         prop(YES)
       
  5810         promptgroup("70 - Alarm")
       
  5811         interest(1)
       
  5812         pp(TRUE)
       
  5813     }
       
  5814     field(AFTC, DBF_DOUBLE) {
       
  5815         promptgroup("70 - Alarm")
       
  5816         interest(1)
       
  5817         prompt("Alarm Filter Time Constant")
       
  5818     }
       
  5819     field(AFVL, DBF_DOUBLE) {
       
  5820         prompt("Alarm Filter Value")
       
  5821         interest(3)
       
  5822         special(SPC_NOMOD)
       
  5823     }
  3507     }
  5824     field(HYST, DBF_DOUBLE) {
  3508     field(HYST, DBF_DOUBLE) {
  5825         promptgroup("70 - Alarm")
       
  5826         interest(1)
       
  5827         prompt("Alarm Deadband")
  3509         prompt("Alarm Deadband")
       
  3510         promptgroup("70 - Alarm")
       
  3511         interest(1)
  5828     }
  3512     }
  5829     field(ADEL, DBF_DOUBLE) {
  3513     field(ADEL, DBF_DOUBLE) {
  5830         prompt("Archive Deadband")
  3514         prompt("Archive Deadband")
  5831         interest(1)
       
  5832         promptgroup("80 - Display")
  3515         promptgroup("80 - Display")
       
  3516         interest(1)
  5833     }
  3517     }
  5834     field(MDEL, DBF_DOUBLE) {
  3518     field(MDEL, DBF_DOUBLE) {
       
  3519         interest(1)
       
  3520         promptgroup("80 - Display")
  5835         prompt("Monitor Deadband")
  3521         prompt("Monitor Deadband")
  5836         promptgroup("80 - Display")
       
  5837         interest(1)
       
  5838     }
  3522     }
  5839     field(A, DBF_DOUBLE) {
  3523     field(A, DBF_DOUBLE) {
  5840         prompt("Value of Input A")
  3524         prompt("Value of Input A")
       
  3525         promptgroup("10 - Common")
  5841         pp(TRUE)
  3526         pp(TRUE)
  5842     }
  3527     }
  5843     field(B, DBF_DOUBLE) {
  3528     field(B, DBF_DOUBLE) {
  5844         pp(TRUE)
       
  5845         prompt("Value of Input B")
  3529         prompt("Value of Input B")
       
  3530         promptgroup("10 - Common")
       
  3531         pp(TRUE)
  5846     }
  3532     }
  5847     field(C, DBF_DOUBLE) {
  3533     field(C, DBF_DOUBLE) {
  5848         prompt("Value of Input C")
  3534         prompt("Value of Input C")
  5849         pp(TRUE)
  3535         pp(TRUE)
       
  3536         promptgroup("10 - Common")
  5850     }
  3537     }
  5851     field(D, DBF_DOUBLE) {
  3538     field(D, DBF_DOUBLE) {
  5852         pp(TRUE)
       
  5853         prompt("Value of Input D")
  3539         prompt("Value of Input D")
       
  3540         promptgroup("10 - Common")
       
  3541         pp(TRUE)
  5854     }
  3542     }
  5855     field(E, DBF_DOUBLE) {
  3543     field(E, DBF_DOUBLE) {
  5856         pp(TRUE)
       
  5857         prompt("Value of Input E")
  3544         prompt("Value of Input E")
       
  3545         pp(TRUE)
       
  3546         promptgroup("10 - Common")
  5858     }
  3547     }
  5859     field(F, DBF_DOUBLE) {
  3548     field(F, DBF_DOUBLE) {
  5860         prompt("Value of Input F")
  3549         prompt("Value of Input F")
       
  3550         promptgroup("10 - Common")
  5861         pp(TRUE)
  3551         pp(TRUE)
  5862     }
  3552     }
  5863     field(G, DBF_DOUBLE) {
  3553     field(G, DBF_DOUBLE) {
  5864         prompt("Value of Input G")
  3554         prompt("Value of Input G")
       
  3555         promptgroup("10 - Common")
  5865         pp(TRUE)
  3556         pp(TRUE)
  5866     }
  3557     }
  5867     field(H, DBF_DOUBLE) {
  3558     field(H, DBF_DOUBLE) {
  5868         pp(TRUE)
  3559         pp(TRUE)
       
  3560         promptgroup("10 - Common")
  5869         prompt("Value of Input H")
  3561         prompt("Value of Input H")
  5870     }
  3562     }
  5871     field(I, DBF_DOUBLE) {
  3563     field(I, DBF_DOUBLE) {
  5872         pp(TRUE)
  3564         pp(TRUE)
       
  3565         promptgroup("10 - Common")
  5873         prompt("Value of Input I")
  3566         prompt("Value of Input I")
  5874     }
  3567     }
  5875     field(J, DBF_DOUBLE) {
  3568     field(J, DBF_DOUBLE) {
       
  3569         promptgroup("10 - Common")
  5876         pp(TRUE)
  3570         pp(TRUE)
  5877         prompt("Value of Input J")
  3571         prompt("Value of Input J")
  5878     }
  3572     }
  5879     field(K, DBF_DOUBLE) {
  3573     field(K, DBF_DOUBLE) {
  5880         pp(TRUE)
  3574         pp(TRUE)
       
  3575         promptgroup("10 - Common")
  5881         prompt("Value of Input K")
  3576         prompt("Value of Input K")
  5882     }
  3577     }
  5883     field(L, DBF_DOUBLE) {
  3578     field(L, DBF_DOUBLE) {
  5884         prompt("Value of Input L")
  3579         prompt("Value of Input L")
  5885         pp(TRUE)
  3580         promptgroup("10 - Common")
  5886     }
  3581         pp(TRUE)
  5887     field(LA, DBF_DOUBLE) {
  3582     }
  5888         interest(3)
  3583     field(STRS, DBF_NOACCESS) {
  5889         special(SPC_NOMOD)
  3584         interest(4)
       
  3585         prompt("Array of string pointers")
       
  3586         extra("char **strs")
       
  3587         size(4)
       
  3588     }
       
  3589     field(AA, DBF_STRING) {
       
  3590         promptgroup("10 - Common")
       
  3591         pp(TRUE)
       
  3592         interest(4)
       
  3593         prompt("Value of string input AA")
       
  3594         size(40)
       
  3595     }
       
  3596     field(BB, DBF_STRING) {
       
  3597         size(40)
       
  3598         prompt("Value of string input BB")
       
  3599         interest(4)
       
  3600         pp(TRUE)
       
  3601         promptgroup("10 - Common")
       
  3602     }
       
  3603     field(CC, DBF_STRING) {
       
  3604         pp(TRUE)
       
  3605         promptgroup("10 - Common")
       
  3606         interest(4)
       
  3607         prompt("Value of string input CC")
       
  3608         size(40)
       
  3609     }
       
  3610     field(DD, DBF_STRING) {
       
  3611         interest(4)
       
  3612         promptgroup("10 - Common")
       
  3613         pp(TRUE)
       
  3614         size(40)
       
  3615         prompt("Value of string input DD")
       
  3616     }
       
  3617     field(EE, DBF_STRING) {
       
  3618         promptgroup("10 - Common")
       
  3619         pp(TRUE)
       
  3620         interest(4)
       
  3621         prompt("Value of string input EE")
       
  3622         size(40)
       
  3623     }
       
  3624     field(FF, DBF_STRING) {
       
  3625         prompt("Value of string input FF")
       
  3626         size(40)
       
  3627         promptgroup("10 - Common")
       
  3628         pp(TRUE)
       
  3629         interest(4)
       
  3630     }
       
  3631     field(GG, DBF_STRING) {
       
  3632         interest(4)
       
  3633         promptgroup("10 - Common")
       
  3634         pp(TRUE)
       
  3635         size(40)
       
  3636         prompt("Value of string input GG")
       
  3637     }
       
  3638     field(HH, DBF_STRING) {
       
  3639         size(40)
       
  3640         prompt("Value of string input HH")
       
  3641         interest(4)
       
  3642         pp(TRUE)
       
  3643         promptgroup("10 - Common")
       
  3644     }
       
  3645     field(II, DBF_STRING) {
       
  3646         prompt("Value of string input II")
       
  3647         size(40)
       
  3648         pp(TRUE)
       
  3649         promptgroup("10 - Common")
       
  3650         interest(4)
       
  3651     }
       
  3652     field(JJ, DBF_STRING) {
       
  3653         prompt("Value of string input JJ")
       
  3654         size(40)
       
  3655         promptgroup("10 - Common")
       
  3656         pp(TRUE)
       
  3657         interest(4)
       
  3658     }
       
  3659     field(KK, DBF_STRING) {
       
  3660         size(40)
       
  3661         prompt("Value of string input KK")
       
  3662         interest(4)
       
  3663         promptgroup("10 - Common")
       
  3664         pp(TRUE)
       
  3665     }
       
  3666     field(LL, DBF_STRING) {
       
  3667         prompt("Value of string input LL")
       
  3668         size(40)
       
  3669         promptgroup("10 - Common")
       
  3670         pp(TRUE)
       
  3671         interest(4)
       
  3672     }
       
  3673     field(PAA, DBF_NOACCESS) {
       
  3674         interest(4)
       
  3675         special(SPC_DBADDR)
       
  3676         prompt("Prev Value of AA")
       
  3677         size(4)
       
  3678         extra("char *paa")
       
  3679     }
       
  3680     field(PBB, DBF_NOACCESS) {
       
  3681         extra("char *pbb")
       
  3682         size(4)
       
  3683         prompt("Prev Value of BB")
       
  3684         interest(4)
       
  3685         special(SPC_DBADDR)
       
  3686     }
       
  3687     field(PCC, DBF_NOACCESS) {
       
  3688         interest(4)
       
  3689         special(SPC_DBADDR)
       
  3690         size(4)
       
  3691         extra("char *pcc")
       
  3692         prompt("Prev Value of CC")
       
  3693     }
       
  3694     field(PDD, DBF_NOACCESS) {
       
  3695         interest(4)
       
  3696         special(SPC_DBADDR)
       
  3697         size(4)
       
  3698         extra("char *pdd")
       
  3699         prompt("Prev Value of DD")
       
  3700     }
       
  3701     field(PEE, DBF_NOACCESS) {
       
  3702         size(4)
       
  3703         extra("char *pee")
       
  3704         prompt("Prev Value of EE")
       
  3705         special(SPC_DBADDR)
       
  3706         interest(4)
       
  3707     }
       
  3708     field(PFF, DBF_NOACCESS) {
       
  3709         special(SPC_DBADDR)
       
  3710         interest(4)
       
  3711         prompt("Prev Value of FF")
       
  3712         extra("char *pff")
       
  3713         size(4)
       
  3714     }
       
  3715     field(PGG, DBF_NOACCESS) {
       
  3716         interest(4)
       
  3717         special(SPC_DBADDR)
       
  3718         prompt("Prev Value of GG")
       
  3719         size(4)
       
  3720         extra("char *pgg")
       
  3721     }
       
  3722     field(PHH, DBF_NOACCESS) {
       
  3723         interest(4)
       
  3724         special(SPC_DBADDR)
       
  3725         extra("char *phh")
       
  3726         size(4)
       
  3727         prompt("Prev Value of HH")
       
  3728     }
       
  3729     field(PII, DBF_NOACCESS) {
       
  3730         interest(4)
       
  3731         special(SPC_DBADDR)
       
  3732         size(4)
       
  3733         extra("char *pii")
       
  3734         prompt("Prev Value of II")
       
  3735     }
       
  3736     field(PJJ, DBF_NOACCESS) {
       
  3737         prompt("Prev Value of JJ")
       
  3738         extra("char *pjj")
       
  3739         size(4)
       
  3740         special(SPC_DBADDR)
       
  3741         interest(4)
       
  3742     }
       
  3743     field(PKK, DBF_NOACCESS) {
       
  3744         prompt("Prev Value of KK")
       
  3745         extra("char *pkk")
       
  3746         size(4)
       
  3747         interest(4)
       
  3748         special(SPC_DBADDR)
       
  3749     }
       
  3750     field(PLL, DBF_NOACCESS) {
       
  3751         special(SPC_DBADDR)
       
  3752         interest(4)
       
  3753         extra("char *pll")
       
  3754         size(4)
       
  3755         prompt("Prev Value of LL")
       
  3756     }
       
  3757     field(OVAL, DBF_DOUBLE) {
       
  3758         asl(ASL0)
       
  3759         prompt("Output Value")
       
  3760     }
       
  3761     field(OSV, DBF_STRING) {
       
  3762         prompt("Output string value")
       
  3763         asl(ASL0)
       
  3764         size(40)
       
  3765     }
       
  3766     field(POSV, DBF_STRING) {
       
  3767         special(SPC_NOMOD)
       
  3768         prompt("Previous output string value")
       
  3769         size(40)
       
  3770     }
       
  3771     field(PA, DBF_DOUBLE) {
       
  3772         special(SPC_NOMOD)
       
  3773         interest(3)
  5890         prompt("Prev Value of A")
  3774         prompt("Prev Value of A")
  5891     }
  3775     }
  5892     field(LB, DBF_DOUBLE) {
  3776     field(PB, DBF_DOUBLE) {
  5893         special(SPC_NOMOD)
  3777         interest(3)
  5894         interest(3)
  3778         special(SPC_NOMOD)
  5895         prompt("Prev Value of B")
  3779         prompt("Prev Value of B")
  5896     }
  3780     }
  5897     field(LC, DBF_DOUBLE) {
  3781     field(PC, DBF_DOUBLE) {
  5898         special(SPC_NOMOD)
       
  5899         interest(3)
       
  5900         prompt("Prev Value of C")
  3782         prompt("Prev Value of C")
  5901     }
  3783         interest(3)
  5902     field(LD, DBF_DOUBLE) {
  3784         special(SPC_NOMOD)
       
  3785     }
       
  3786     field(PD, DBF_DOUBLE) {
  5903         prompt("Prev Value of D")
  3787         prompt("Prev Value of D")
  5904         interest(3)
  3788         interest(3)
  5905         special(SPC_NOMOD)
  3789         special(SPC_NOMOD)
  5906     }
  3790     }
  5907     field(LE, DBF_DOUBLE) {
  3791     field(PE, DBF_DOUBLE) {
  5908         interest(3)
       
  5909         special(SPC_NOMOD)
       
  5910         prompt("Prev Value of E")
  3792         prompt("Prev Value of E")
  5911     }
  3793         special(SPC_NOMOD)
  5912     field(LF, DBF_DOUBLE) {
  3794         interest(3)
       
  3795     }
       
  3796     field(PF, DBF_DOUBLE) {
       
  3797         special(SPC_NOMOD)
       
  3798         interest(3)
  5913         prompt("Prev Value of F")
  3799         prompt("Prev Value of F")
  5914         interest(3)
  3800     }
  5915         special(SPC_NOMOD)
  3801     field(PG, DBF_DOUBLE) {
  5916     }
  3802         interest(3)
  5917     field(LG, DBF_DOUBLE) {
  3803         special(SPC_NOMOD)
  5918         prompt("Prev Value of G")
  3804         prompt("Prev Value of G")
  5919         interest(3)
  3805     }
  5920         special(SPC_NOMOD)
  3806     field(PH, DBF_DOUBLE) {
  5921     }
       
  5922     field(LH, DBF_DOUBLE) {
       
  5923         interest(3)
       
  5924         special(SPC_NOMOD)
       
  5925         prompt("Prev Value of H")
  3807         prompt("Prev Value of H")
  5926     }
  3808         special(SPC_NOMOD)
  5927     field(LI, DBF_DOUBLE) {
  3809         interest(3)
       
  3810     }
       
  3811     field(PI, DBF_DOUBLE) {
       
  3812         interest(3)
       
  3813         special(SPC_NOMOD)
  5928         prompt("Prev Value of I")
  3814         prompt("Prev Value of I")
  5929         special(SPC_NOMOD)
  3815     }
  5930         interest(3)
  3816     field(PJ, DBF_DOUBLE) {
  5931     }
       
  5932     field(LJ, DBF_DOUBLE) {
       
  5933         prompt("Prev Value of J")
  3817         prompt("Prev Value of J")
  5934         special(SPC_NOMOD)
  3818         special(SPC_NOMOD)
  5935         interest(3)
  3819         interest(3)
  5936     }
  3820     }
  5937     field(LK, DBF_DOUBLE) {
  3821     field(PK, DBF_DOUBLE) {
  5938         special(SPC_NOMOD)
  3822         interest(3)
  5939         interest(3)
  3823         special(SPC_NOMOD)
  5940         prompt("Prev Value of K")
  3824         prompt("Prev Value of K")
  5941     }
  3825     }
  5942     field(LL, DBF_DOUBLE) {
  3826     field(PL, DBF_DOUBLE) {
  5943         special(SPC_NOMOD)
  3827         interest(3)
  5944         interest(3)
  3828         special(SPC_NOMOD)
  5945         prompt("Prev Value of L")
  3829         prompt("Prev Value of L")
  5946     }
  3830     }
       
  3831     field(POVL, DBF_DOUBLE) {
       
  3832         prompt("Prev Value of OVAL")
       
  3833         asl(ASL0)
       
  3834     }
  5947     field(LALM, DBF_DOUBLE) {
  3835     field(LALM, DBF_DOUBLE) {
       
  3836         special(SPC_NOMOD)
       
  3837         interest(3)
  5948         prompt("Last Value Alarmed")
  3838         prompt("Last Value Alarmed")
  5949         interest(3)
       
  5950         special(SPC_NOMOD)
       
  5951     }
  3839     }
  5952     field(ALST, DBF_DOUBLE) {
  3840     field(ALST, DBF_DOUBLE) {
  5953         special(SPC_NOMOD)
  3841         special(SPC_NOMOD)
  5954         interest(3)
  3842         interest(3)
  5955         prompt("Last Value Archived")
  3843         prompt("Last Value Archived")
  5956     }
  3844     }
  5957     field(MLST, DBF_DOUBLE) {
  3845     field(MLST, DBF_DOUBLE) {
  5958         special(SPC_NOMOD)
  3846         interest(3)
  5959         interest(3)
  3847         special(SPC_NOMOD)
  5960         prompt("Last Val Monitored")
  3848         prompt("Last Val Monitored")
  5961     }
  3849     }
  5962     field(RPCL, DBF_NOACCESS) {
  3850     field(RPCL, DBF_NOACCESS) {
  5963         extra("char	rpcl[INFIX_TO_POSTFIX_SIZE(80)]")
  3851         extra("unsigned char rpcl[282]")
  5964         special(SPC_NOMOD)
  3852         prompt("Postfix Calc")
  5965         interest(4)
  3853         special(SPC_NOMOD)
  5966         prompt("Reverse Polish Calc")
  3854         interest(4)
       
  3855     }
       
  3856     field(ORPC, DBF_NOACCESS) {
       
  3857         special(SPC_NOMOD)
       
  3858         interest(4)
       
  3859         prompt("Postfix OCalc")
       
  3860         extra("unsigned char orpc[282]")
  5967     }
  3861     }
  5968 }
  3862 }
  5969 recordtype(calcout) {
  3863 device(scalcout, CONSTANT, devsCalcoutSoft, "Soft Channel")
       
  3864 device(scalcout, INST_IO, devscalcoutStream, "stream")
       
  3865 recordtype(permissive) {
  5970     %#include "epicsTypes.h"
  3866     %#include "epicsTypes.h"
  5971     %#include "link.h"
  3867     %#include "link.h"
  5972     %#include "epicsMutex.h"
  3868     %#include "epicsMutex.h"
  5973     %#include "ellLib.h"
  3869     %#include "ellLib.h"
  5974     %#include "epicsTime.h"
  3870     %#include "epicsTime.h"
  5975     %#include "dbScan.h"
       
  5976     %#include "postfix.h"
       
  5977     field(NAME, DBF_STRING) {
  3871     field(NAME, DBF_STRING) {
       
  3872         prompt("Record Name")
  5978         size(61)
  3873         size(61)
  5979         special(SPC_NOMOD)
  3874         special(SPC_NOMOD)
  5980         prompt("Record Name")
       
  5981     }
  3875     }
  5982     field(DESC, DBF_STRING) {
  3876     field(DESC, DBF_STRING) {
       
  3877         promptgroup("10 - Common")
       
  3878         prompt("Descriptor")
  5983         size(41)
  3879         size(41)
  5984         prompt("Descriptor")
       
  5985         promptgroup("10 - Common")
       
  5986     }
  3880     }
  5987     field(ASG, DBF_STRING) {
  3881     field(ASG, DBF_STRING) {
       
  3882         promptgroup("10 - Common")
       
  3883         special(SPC_AS)
       
  3884         prompt("Access Security Group")
  5988         size(29)
  3885         size(29)
  5989         special(SPC_AS)
       
  5990         promptgroup("10 - Common")
       
  5991         prompt("Access Security Group")
       
  5992     }
  3886     }
  5993     field(SCAN, DBF_MENU) {
  3887     field(SCAN, DBF_MENU) {
  5994         special(SPC_SCAN)
  3888         special(SPC_SCAN)
       
  3889         menu(menuScan)
  5995         interest(1)
  3890         interest(1)
  5996         promptgroup("20 - Scan")
  3891         promptgroup("20 - Scan")
  5997         prompt("Scan Mechanism")
  3892         prompt("Scan Mechanism")
  5998         menu(menuScan)
       
  5999     }
  3893     }
  6000     field(PINI, DBF_MENU) {
  3894     field(PINI, DBF_MENU) {
  6001         menu(menuPini)
  3895         menu(menuPini)
       
  3896         interest(1)
       
  3897         promptgroup("20 - Scan")
  6002         prompt("Process at iocInit")
  3898         prompt("Process at iocInit")
  6003         promptgroup("20 - Scan")
       
  6004         interest(1)
       
  6005     }
  3899     }
  6006     field(PHAS, DBF_SHORT) {
  3900     field(PHAS, DBF_SHORT) {
       
  3901         interest(1)
       
  3902         special(SPC_SCAN)
       
  3903         promptgroup("20 - Scan")
  6007         prompt("Scan Phase")
  3904         prompt("Scan Phase")
       
  3905     }
       
  3906     field(EVNT, DBF_STRING) {
       
  3907         size(40)
       
  3908         prompt("Event Name")
       
  3909         interest(1)
  6008         special(SPC_SCAN)
  3910         special(SPC_SCAN)
  6009         interest(1)
  3911         promptgroup("20 - Scan")
  6010         promptgroup("20 - Scan")
       
  6011     }
       
  6012     field(EVNT, DBF_STRING) {
       
  6013         interest(1)
       
  6014         special(SPC_SCAN)
       
  6015         promptgroup("20 - Scan")
       
  6016         prompt("Event Name")
       
  6017         size(40)
       
  6018     }
  3912     }
  6019     field(TSE, DBF_SHORT) {
  3913     field(TSE, DBF_SHORT) {
  6020         promptgroup("20 - Scan")
  3914         promptgroup("20 - Scan")
  6021         interest(1)
  3915         interest(1)
  6022         prompt("Time Stamp Event")
  3916         prompt("Time Stamp Event")
  6023     }
  3917     }
  6024     field(TSEL, DBF_INLINK) {
  3918     field(TSEL, DBF_INLINK) {
  6025         prompt("Time Stamp Link")
  3919         prompt("Time Stamp Link")
  6026         interest(1)
  3920         promptgroup("20 - Scan")
  6027         promptgroup("20 - Scan")
  3921         interest(1)
  6028     }
  3922     }
  6029     field(DTYP, DBF_DEVICE) {
  3923     field(DTYP, DBF_DEVICE) {
  6030         interest(1)
  3924         interest(1)
  6031         promptgroup("10 - Common")
  3925         promptgroup("10 - Common")
  6032         prompt("Device Type")
  3926         prompt("Device Type")
  6033     }
  3927     }
  6034     field(DISV, DBF_SHORT) {
  3928     field(DISV, DBF_SHORT) {
  6035         initial("1")
       
  6036         promptgroup("20 - Scan")
       
  6037         prompt("Disable Value")
  3929         prompt("Disable Value")
       
  3930         initial("1")
       
  3931         promptgroup("20 - Scan")
  6038     }
  3932     }
  6039     field(DISA, DBF_SHORT) {
  3933     field(DISA, DBF_SHORT) {
  6040         prompt("Disable")
  3934         prompt("Disable")
  6041     }
  3935     }
  6042     field(SDIS, DBF_INLINK) {
  3936     field(SDIS, DBF_INLINK) {
  6043         prompt("Scanning Disable")
  3937         prompt("Scanning Disable")
  6044         interest(1)
  3938         interest(1)
  6045         promptgroup("20 - Scan")
  3939         promptgroup("20 - Scan")
  6046     }
  3940     }
  6047     field(MLOK, DBF_NOACCESS) {
  3941     field(MLOK, DBF_NOACCESS) {
  6048         special(SPC_NOMOD)
       
  6049         interest(4)
       
  6050         prompt("Monitor lock")
  3942         prompt("Monitor lock")
  6051         extra("epicsMutexId        mlok")
  3943         extra("epicsMutexId        mlok")
       
  3944         interest(4)
       
  3945         special(SPC_NOMOD)
  6052     }
  3946     }
  6053     field(MLIS, DBF_NOACCESS) {
  3947     field(MLIS, DBF_NOACCESS) {
  6054         special(SPC_NOMOD)
  3948         extra("ELLLIST             mlis")
  6055         interest(4)
       
  6056         prompt("Monitor List")
  3949         prompt("Monitor List")
  6057         extra("ELLLIST             mlis")
  3950         interest(4)
       
  3951         special(SPC_NOMOD)
  6058     }
  3952     }
  6059     field(BKLNK, DBF_NOACCESS) {
  3953     field(BKLNK, DBF_NOACCESS) {
       
  3954         extra("ELLLIST             bklnk")
  6060         prompt("Backwards link tracking")
  3955         prompt("Backwards link tracking")
  6061         special(SPC_NOMOD)
  3956         special(SPC_NOMOD)
  6062         interest(4)
  3957         interest(4)
  6063         extra("ELLLIST             bklnk")
       
  6064     }
  3958     }
  6065     field(DISP, DBF_UCHAR) {
  3959     field(DISP, DBF_UCHAR) {
  6066         prompt("Disable putField")
  3960         prompt("Disable putField")
  6067     }
  3961     }
  6068     field(PROC, DBF_UCHAR) {
  3962     field(PROC, DBF_UCHAR) {
  6069         pp(TRUE)
       
  6070         interest(3)
       
  6071         prompt("Force Processing")
  3963         prompt("Force Processing")
       
  3964         interest(3)
       
  3965         pp(TRUE)
  6072     }
  3966     }
  6073     field(STAT, DBF_MENU) {
  3967     field(STAT, DBF_MENU) {
  6074         initial("UDF")
  3968         initial("UDF")
  6075         prompt("Alarm Status")
  3969         prompt("Alarm Status")
  6076         special(SPC_NOMOD)
  3970         special(SPC_NOMOD)
  6077         menu(menuAlarmStat)
  3971         menu(menuAlarmStat)
  6078     }
  3972     }
  6079     field(SEVR, DBF_MENU) {
  3973     field(SEVR, DBF_MENU) {
  6080         prompt("Alarm Severity")
  3974         prompt("Alarm Severity")
  6081         special(SPC_NOMOD)
  3975         menu(menuAlarmSevr)
  6082         menu(menuAlarmSevr)
  3976         special(SPC_NOMOD)
  6083     }
  3977     }
  6084     field(NSTA, DBF_MENU) {
  3978     field(NSTA, DBF_MENU) {
  6085         menu(menuAlarmStat)
  3979         menu(menuAlarmStat)
  6086         interest(2)
  3980         interest(2)
  6087         special(SPC_NOMOD)
  3981         special(SPC_NOMOD)
  6088         prompt("New Alarm Status")
  3982         prompt("New Alarm Status")
  6089     }
  3983     }
  6090     field(NSEV, DBF_MENU) {
  3984     field(NSEV, DBF_MENU) {
  6091         menu(menuAlarmSevr)
       
  6092         prompt("New Alarm Severity")
  3985         prompt("New Alarm Severity")
  6093         special(SPC_NOMOD)
  3986         special(SPC_NOMOD)
  6094         interest(2)
  3987         interest(2)
       
  3988         menu(menuAlarmSevr)
  6095     }
  3989     }
  6096     field(ACKS, DBF_MENU) {
  3990     field(ACKS, DBF_MENU) {
  6097         interest(2)
  3991         special(SPC_NOMOD)
  6098         special(SPC_NOMOD)
  3992         menu(menuAlarmSevr)
       
  3993         interest(2)
  6099         prompt("Alarm Ack Severity")
  3994         prompt("Alarm Ack Severity")
  6100         menu(menuAlarmSevr)
       
  6101     }
  3995     }
  6102     field(ACKT, DBF_MENU) {
  3996     field(ACKT, DBF_MENU) {
  6103         interest(2)
  3997         initial("YES")
  6104         special(SPC_NOMOD)
       
  6105         promptgroup("70 - Alarm")
       
  6106         prompt("Alarm Ack Transient")
  3998         prompt("Alarm Ack Transient")
       
  3999         special(SPC_NOMOD)
  6107         menu(menuYesNo)
  4000         menu(menuYesNo)
  6108         initial("YES")
  4001         interest(2)
       
  4002         promptgroup("70 - Alarm")
  6109     }
  4003     }
  6110     field(DISS, DBF_MENU) {
  4004     field(DISS, DBF_MENU) {
  6111         interest(1)
  4005         promptgroup("70 - Alarm")
  6112         promptgroup("70 - Alarm")
  4006         interest(1)
       
  4007         menu(menuAlarmSevr)
  6113         prompt("Disable Alarm Sevrty")
  4008         prompt("Disable Alarm Sevrty")
  6114         menu(menuAlarmSevr)
       
  6115     }
  4009     }
  6116     field(LCNT, DBF_UCHAR) {
  4010     field(LCNT, DBF_UCHAR) {
  6117         interest(2)
       
  6118         special(SPC_NOMOD)
       
  6119         prompt("Lock Count")
  4011         prompt("Lock Count")
       
  4012         special(SPC_NOMOD)
       
  4013         interest(2)
  6120     }
  4014     }
  6121     field(PACT, DBF_UCHAR) {
  4015     field(PACT, DBF_UCHAR) {
       
  4016         interest(1)
       
  4017         special(SPC_NOMOD)
  6122         prompt("Record active")
  4018         prompt("Record active")
  6123         interest(1)
       
  6124         special(SPC_NOMOD)
       
  6125     }
  4019     }
  6126     field(PUTF, DBF_UCHAR) {
  4020     field(PUTF, DBF_UCHAR) {
  6127         interest(1)
  4021         interest(1)
  6128         special(SPC_NOMOD)
  4022         special(SPC_NOMOD)
  6129         prompt("dbPutField process")
  4023         prompt("dbPutField process")
  6130     }
  4024     }
  6131     field(RPRO, DBF_UCHAR) {
  4025     field(RPRO, DBF_UCHAR) {
       
  4026         special(SPC_NOMOD)
       
  4027         interest(1)
  6132         prompt("Reprocess ")
  4028         prompt("Reprocess ")
  6133         interest(1)
       
  6134         special(SPC_NOMOD)
       
  6135     }
  4029     }
  6136     field(ASP, DBF_NOACCESS) {
  4030     field(ASP, DBF_NOACCESS) {
  6137         extra("struct asgMember    *asp")
  4031         extra("struct asgMember    *asp")
  6138         prompt("Access Security Pvt")
  4032         prompt("Access Security Pvt")
  6139         special(SPC_NOMOD)
  4033         interest(4)
  6140         interest(4)
  4034         special(SPC_NOMOD)
  6141     }
  4035     }
  6142     field(PPN, DBF_NOACCESS) {
  4036     field(PPN, DBF_NOACCESS) {
  6143         special(SPC_NOMOD)
  4037         extra("struct processNotify *ppn")
  6144         interest(4)
       
  6145         prompt("pprocessNotify")
  4038         prompt("pprocessNotify")
  6146         extra("struct processNotify *ppn")
  4039         interest(4)
       
  4040         special(SPC_NOMOD)
  6147     }
  4041     }
  6148     field(PPNR, DBF_NOACCESS) {
  4042     field(PPNR, DBF_NOACCESS) {
  6149         special(SPC_NOMOD)
  4043         interest(4)
  6150         interest(4)
  4044         special(SPC_NOMOD)
       
  4045         extra("struct processNotifyRecord *ppnr")
  6151         prompt("pprocessNotifyRecord")
  4046         prompt("pprocessNotifyRecord")
  6152         extra("struct processNotifyRecord *ppnr")
       
  6153     }
  4047     }
  6154     field(SPVT, DBF_NOACCESS) {
  4048     field(SPVT, DBF_NOACCESS) {
       
  4049         interest(4)
       
  4050         special(SPC_NOMOD)
       
  4051         prompt("Scan Private")
  6155         extra("struct scan_element *spvt")
  4052         extra("struct scan_element *spvt")
  6156         interest(4)
       
  6157         special(SPC_NOMOD)
       
  6158         prompt("Scan Private")
       
  6159     }
  4053     }
  6160     field(RSET, DBF_NOACCESS) {
  4054     field(RSET, DBF_NOACCESS) {
  6161         special(SPC_NOMOD)
       
  6162         interest(4)
       
  6163         prompt("Address of RSET")
  4055         prompt("Address of RSET")
  6164         extra("struct typed_rset   *rset")
  4056         extra("struct typed_rset   *rset")
       
  4057         interest(4)
       
  4058         special(SPC_NOMOD)
  6165     }
  4059     }
  6166     field(DSET, DBF_NOACCESS) {
  4060     field(DSET, DBF_NOACCESS) {
       
  4061         prompt("DSET address")
  6167         extra("struct dset         *dset")
  4062         extra("struct dset         *dset")
  6168         prompt("DSET address")
       
  6169         interest(4)
  4063         interest(4)
  6170         special(SPC_NOMOD)
  4064         special(SPC_NOMOD)
  6171     }
  4065     }
  6172     field(DPVT, DBF_NOACCESS) {
  4066     field(DPVT, DBF_NOACCESS) {
       
  4067         prompt("Device Private")
  6173         extra("void                *dpvt")
  4068         extra("void                *dpvt")
  6174         prompt("Device Private")
       
  6175         interest(4)
  4069         interest(4)
  6176         special(SPC_NOMOD)
  4070         special(SPC_NOMOD)
  6177     }
  4071     }
  6178     field(RDES, DBF_NOACCESS) {
  4072     field(RDES, DBF_NOACCESS) {
  6179         extra("struct dbRecordType *rdes")
  4073         extra("struct dbRecordType *rdes")
  6180         prompt("Address of dbRecordType")
  4074         prompt("Address of dbRecordType")
  6181         special(SPC_NOMOD)
  4075         special(SPC_NOMOD)
  6182         interest(4)
  4076         interest(4)
  6183     }
  4077     }
  6184     field(LSET, DBF_NOACCESS) {
  4078     field(LSET, DBF_NOACCESS) {
       
  4079         extra("struct lockRecord   *lset")
  6185         prompt("Lock Set")
  4080         prompt("Lock Set")
  6186         interest(4)
  4081         interest(4)
  6187         special(SPC_NOMOD)
  4082         special(SPC_NOMOD)
  6188         extra("struct lockRecord   *lset")
       
  6189     }
  4083     }
  6190     field(PRIO, DBF_MENU) {
  4084     field(PRIO, DBF_MENU) {
       
  4085         promptgroup("20 - Scan")
       
  4086         special(SPC_SCAN)
       
  4087         interest(1)
  6191         menu(menuPriority)
  4088         menu(menuPriority)
  6192         prompt("Scheduling Priority")
  4089         prompt("Scheduling Priority")
  6193         promptgroup("20 - Scan")
       
  6194         interest(1)
       
  6195         special(SPC_SCAN)
       
  6196     }
  4090     }
  6197     field(TPRO, DBF_UCHAR) {
  4091     field(TPRO, DBF_UCHAR) {
  6198         prompt("Trace Processing")
  4092         prompt("Trace Processing")
  6199     }
  4093     }
  6200     field(BKPT, DBF_NOACCESS) {
  4094     field(BKPT, DBF_NOACCESS) {
  6201         extra("char                bkpt")
  4095         extra("char                bkpt")
  6202         interest(1)
       
  6203         special(SPC_NOMOD)
       
  6204         prompt("Break Point")
  4096         prompt("Break Point")
       
  4097         interest(1)
       
  4098         special(SPC_NOMOD)
  6205     }
  4099     }
  6206     field(UDF, DBF_UCHAR) {
  4100     field(UDF, DBF_UCHAR) {
  6207         pp(TRUE)
  4101         promptgroup("10 - Common")
  6208         initial("1")
  4102         pp(TRUE)
       
  4103         interest(1)
  6209         prompt("Undefined")
  4104         prompt("Undefined")
  6210         interest(1)
  4105         initial("1")
  6211         promptgroup("10 - Common")
       
  6212     }
  4106     }
  6213     field(UDFS, DBF_MENU) {
  4107     field(UDFS, DBF_MENU) {
       
  4108         menu(menuAlarmSevr)
       
  4109         interest(1)
       
  4110         promptgroup("70 - Alarm")
  6214         initial("INVALID")
  4111         initial("INVALID")
  6215         menu(menuAlarmSevr)
       
  6216         promptgroup("70 - Alarm")
       
  6217         interest(1)
       
  6218         prompt("Undefined Alarm Sevrty")
  4112         prompt("Undefined Alarm Sevrty")
  6219     }
  4113     }
  6220     field(TIME, DBF_NOACCESS) {
  4114     field(TIME, DBF_NOACCESS) {
       
  4115         special(SPC_NOMOD)
       
  4116         interest(2)
       
  4117         prompt("Time")
  6221         extra("epicsTimeStamp      time")
  4118         extra("epicsTimeStamp      time")
  6222         special(SPC_NOMOD)
       
  6223         interest(2)
       
  6224         prompt("Time")
       
  6225     }
  4119     }
  6226     field(FLNK, DBF_FWDLINK) {
  4120     field(FLNK, DBF_FWDLINK) {
  6227         interest(1)
       
  6228         promptgroup("20 - Scan")
       
  6229         prompt("Forward Process Link")
  4121         prompt("Forward Process Link")
  6230     }
  4122         promptgroup("20 - Scan")
  6231     field(RPVT, DBF_NOACCESS) {
  4123         interest(1)
  6232         prompt("Record Private")
  4124     }
  6233         interest(4)
  4125     field(LABL, DBF_STRING) {
  6234         special(SPC_NOMOD)
  4126         prompt("Button Label")
  6235         extra("struct rpvtStruct *rpvt")
  4127         size(20)
  6236     }
  4128         pp(TRUE)
  6237     field(VAL, DBF_DOUBLE) {
  4129         promptgroup("80 - Display")
       
  4130         interest(1)
       
  4131     }
       
  4132     field(VAL, DBF_USHORT) {
  6238         asl(ASL0)
  4133         asl(ASL0)
  6239         promptgroup("50 - Output")
  4134         prompt("Status")
  6240         prompt("Result")
  4135         pp(TRUE)
  6241     }
  4136         promptgroup("40 - Input")
  6242     field(PVAL, DBF_DOUBLE) {
  4137     }
  6243         prompt("Previous Value")
  4138     field(OVAL, DBF_USHORT) {
  6244     }
  4139         prompt("Old Status")
  6245     field(CALC, DBF_STRING) {
  4140         special(SPC_NOMOD)
  6246         prompt("Calculation")
  4141         interest(3)
  6247         promptgroup("30 - Action")
  4142     }
  6248         special(SPC_CALC)
  4143     field(WFLG, DBF_USHORT) {
  6249         size(80)
  4144         prompt("Wait Flag")
  6250         initial("0")
  4145         pp(TRUE)
  6251         pp(TRUE)
  4146     }
  6252     }
  4147     field(OFLG, DBF_USHORT) {
  6253     field(CLCV, DBF_LONG) {
  4148         prompt("Old Flag")
  6254         prompt("CALC Valid")
  4149         special(SPC_NOMOD)
  6255         interest(1)
  4150         interest(3)
  6256     }
       
  6257     field(INPA, DBF_INLINK) {
       
  6258         special(SPC_MOD)
       
  6259         interest(1)
       
  6260         promptgroup("41 - Input A-F")
       
  6261         prompt("Input A")
       
  6262     }
       
  6263     field(INPB, DBF_INLINK) {
       
  6264         prompt("Input B")
       
  6265         interest(1)
       
  6266         special(SPC_MOD)
       
  6267         promptgroup("41 - Input A-F")
       
  6268     }
       
  6269     field(INPC, DBF_INLINK) {
       
  6270         prompt("Input C")
       
  6271         interest(1)
       
  6272         special(SPC_MOD)
       
  6273         promptgroup("41 - Input A-F")
       
  6274     }
       
  6275     field(INPD, DBF_INLINK) {
       
  6276         special(SPC_MOD)
       
  6277         interest(1)
       
  6278         promptgroup("41 - Input A-F")
       
  6279         prompt("Input D")
       
  6280     }
       
  6281     field(INPE, DBF_INLINK) {
       
  6282         promptgroup("41 - Input A-F")
       
  6283         interest(1)
       
  6284         special(SPC_MOD)
       
  6285         prompt("Input E")
       
  6286     }
       
  6287     field(INPF, DBF_INLINK) {
       
  6288         interest(1)
       
  6289         promptgroup("41 - Input A-F")
       
  6290         special(SPC_MOD)
       
  6291         prompt("Input F")
       
  6292     }
       
  6293     field(INPG, DBF_INLINK) {
       
  6294         promptgroup("42 - Input G-L")
       
  6295         interest(1)
       
  6296         special(SPC_MOD)
       
  6297         prompt("Input G")
       
  6298     }
       
  6299     field(INPH, DBF_INLINK) {
       
  6300         special(SPC_MOD)
       
  6301         interest(1)
       
  6302         promptgroup("42 - Input G-L")
       
  6303         prompt("Input H")
       
  6304     }
       
  6305     field(INPI, DBF_INLINK) {
       
  6306         prompt("Input I")
       
  6307         promptgroup("42 - Input G-L")
       
  6308         interest(1)
       
  6309         special(SPC_MOD)
       
  6310     }
       
  6311     field(INPJ, DBF_INLINK) {
       
  6312         prompt("Input J")
       
  6313         special(SPC_MOD)
       
  6314         interest(1)
       
  6315         promptgroup("42 - Input G-L")
       
  6316     }
       
  6317     field(INPK, DBF_INLINK) {
       
  6318         prompt("Input K")
       
  6319         promptgroup("42 - Input G-L")
       
  6320         interest(1)
       
  6321         special(SPC_MOD)
       
  6322     }
       
  6323     field(INPL, DBF_INLINK) {
       
  6324         prompt("Input L")
       
  6325         interest(1)
       
  6326         promptgroup("42 - Input G-L")
       
  6327         special(SPC_MOD)
       
  6328     }
       
  6329     field(OUT, DBF_OUTLINK) {
       
  6330         interest(1)
       
  6331         special(SPC_MOD)
       
  6332         promptgroup("50 - Output")
       
  6333         prompt("Output Specification")
       
  6334     }
       
  6335     field(INAV, DBF_MENU) {
       
  6336         interest(1)
       
  6337         special(SPC_NOMOD)
       
  6338         prompt("INPA PV Status")
       
  6339         menu(calcoutINAV)
       
  6340         initial("1")
       
  6341     }
       
  6342     field(INBV, DBF_MENU) {
       
  6343         initial("1")
       
  6344         special(SPC_NOMOD)
       
  6345         interest(1)
       
  6346         prompt("INPB PV Status")
       
  6347         menu(calcoutINAV)
       
  6348     }
       
  6349     field(INCV, DBF_MENU) {
       
  6350         menu(calcoutINAV)
       
  6351         interest(1)
       
  6352         special(SPC_NOMOD)
       
  6353         prompt("INPC PV Status")
       
  6354         initial("1")
       
  6355     }
       
  6356     field(INDV, DBF_MENU) {
       
  6357         special(SPC_NOMOD)
       
  6358         interest(1)
       
  6359         prompt("INPD PV Status")
       
  6360         menu(calcoutINAV)
       
  6361         initial("1")
       
  6362     }
       
  6363     field(INEV, DBF_MENU) {
       
  6364         initial("1")
       
  6365         special(SPC_NOMOD)
       
  6366         interest(1)
       
  6367         prompt("INPE PV Status")
       
  6368         menu(calcoutINAV)
       
  6369     }
       
  6370     field(INFV, DBF_MENU) {
       
  6371         menu(calcoutINAV)
       
  6372         special(SPC_NOMOD)
       
  6373         interest(1)
       
  6374         prompt("INPF PV Status")
       
  6375         initial("1")
       
  6376     }
       
  6377     field(INGV, DBF_MENU) {
       
  6378         menu(calcoutINAV)
       
  6379         prompt("INPG PV Status")
       
  6380         special(SPC_NOMOD)
       
  6381         interest(1)
       
  6382         initial("1")
       
  6383     }
       
  6384     field(INHV, DBF_MENU) {
       
  6385         prompt("INPH PV Status")
       
  6386         special(SPC_NOMOD)
       
  6387         interest(1)
       
  6388         menu(calcoutINAV)
       
  6389         initial("1")
       
  6390     }
       
  6391     field(INIV, DBF_MENU) {
       
  6392         initial("1")
       
  6393         menu(calcoutINAV)
       
  6394         interest(1)
       
  6395         special(SPC_NOMOD)
       
  6396         prompt("INPI PV Status")
       
  6397     }
       
  6398     field(INJV, DBF_MENU) {
       
  6399         prompt("INPJ PV Status")
       
  6400         special(SPC_NOMOD)
       
  6401         interest(1)
       
  6402         menu(calcoutINAV)
       
  6403         initial("1")
       
  6404     }
       
  6405     field(INKV, DBF_MENU) {
       
  6406         menu(calcoutINAV)
       
  6407         interest(1)
       
  6408         special(SPC_NOMOD)
       
  6409         prompt("INPK PV Status")
       
  6410         initial("1")
       
  6411     }
       
  6412     field(INLV, DBF_MENU) {
       
  6413         initial("1")
       
  6414         prompt("INPL PV Status")
       
  6415         special(SPC_NOMOD)
       
  6416         interest(1)
       
  6417         menu(calcoutINAV)
       
  6418     }
       
  6419     field(OUTV, DBF_MENU) {
       
  6420         menu(calcoutINAV)
       
  6421         interest(1)
       
  6422         special(SPC_NOMOD)
       
  6423         prompt("OUT PV Status")
       
  6424     }
       
  6425     field(OOPT, DBF_MENU) {
       
  6426         menu(calcoutOOPT)
       
  6427         prompt("Output Execute Opt")
       
  6428         promptgroup("50 - Output")
       
  6429         interest(1)
       
  6430     }
       
  6431     field(ODLY, DBF_DOUBLE) {
       
  6432         asl(ASL0)
       
  6433         prompt("Output Execute Delay")
       
  6434         interest(1)
       
  6435         promptgroup("50 - Output")
       
  6436     }
       
  6437     field(DLYA, DBF_USHORT) {
       
  6438         asl(ASL0)
       
  6439         prompt("Output Delay Active")
       
  6440         special(SPC_NOMOD)
       
  6441     }
       
  6442     field(DOPT, DBF_MENU) {
       
  6443         prompt("Output Data Opt")
       
  6444         promptgroup("30 - Action")
       
  6445         interest(1)
       
  6446         menu(calcoutDOPT)
       
  6447     }
       
  6448     field(OCAL, DBF_STRING) {
       
  6449         prompt("Output Calculation")
       
  6450         promptgroup("30 - Action")
       
  6451         special(SPC_CALC)
       
  6452         initial("0")
       
  6453         size(80)
       
  6454         pp(TRUE)
       
  6455     }
       
  6456     field(OCLV, DBF_LONG) {
       
  6457         interest(1)
       
  6458         prompt("OCAL Valid")
       
  6459     }
       
  6460     field(OEVT, DBF_STRING) {
       
  6461         size(40)
       
  6462         prompt("Event To Issue")
       
  6463         special(SPC_MOD)
       
  6464         promptgroup("30 - Action")
       
  6465         asl(ASL0)
       
  6466     }
       
  6467     field(EPVT, DBF_NOACCESS) {
       
  6468         prompt("Event private")
       
  6469         interest(4)
       
  6470         special(SPC_NOMOD)
       
  6471         extra("EVENTPVT epvt")
       
  6472     }
       
  6473     field(IVOA, DBF_MENU) {
       
  6474         menu(menuIvoa)
       
  6475         promptgroup("50 - Output")
       
  6476         interest(2)
       
  6477         prompt("INVALID output action")
       
  6478     }
       
  6479     field(IVOV, DBF_DOUBLE) {
       
  6480         prompt("INVALID output value")
       
  6481         interest(2)
       
  6482         promptgroup("50 - Output")
       
  6483     }
       
  6484     field(EGU, DBF_STRING) {
       
  6485         size(16)
       
  6486         interest(1)
       
  6487         prop(YES)
       
  6488         promptgroup("80 - Display")
       
  6489         prompt("Engineering Units")
       
  6490     }
       
  6491     field(PREC, DBF_SHORT) {
       
  6492         prompt("Display Precision")
       
  6493         prop(YES)
       
  6494         interest(1)
       
  6495         promptgroup("80 - Display")
       
  6496     }
       
  6497     field(HOPR, DBF_DOUBLE) {
       
  6498         prompt("High Operating Rng")
       
  6499         prop(YES)
       
  6500         promptgroup("80 - Display")
       
  6501         interest(1)
       
  6502     }
       
  6503     field(LOPR, DBF_DOUBLE) {
       
  6504         prompt("Low Operating Range")
       
  6505         interest(1)
       
  6506         prop(YES)
       
  6507         promptgroup("80 - Display")
       
  6508     }
       
  6509     field(HIHI, DBF_DOUBLE) {
       
  6510         prompt("Hihi Alarm Limit")
       
  6511         prop(YES)
       
  6512         promptgroup("70 - Alarm")
       
  6513         interest(1)
       
  6514         pp(TRUE)
       
  6515     }
       
  6516     field(LOLO, DBF_DOUBLE) {
       
  6517         pp(TRUE)
       
  6518         prompt("Lolo Alarm Limit")
       
  6519         prop(YES)
       
  6520         promptgroup("70 - Alarm")
       
  6521         interest(1)
       
  6522     }
       
  6523     field(HIGH, DBF_DOUBLE) {
       
  6524         pp(TRUE)
       
  6525         prop(YES)
       
  6526         promptgroup("70 - Alarm")
       
  6527         interest(1)
       
  6528         prompt("High Alarm Limit")
       
  6529     }
       
  6530     field(LOW, DBF_DOUBLE) {
       
  6531         pp(TRUE)
       
  6532         prop(YES)
       
  6533         interest(1)
       
  6534         promptgroup("70 - Alarm")
       
  6535         prompt("Low Alarm Limit")
       
  6536     }
       
  6537     field(HHSV, DBF_MENU) {
       
  6538         menu(menuAlarmSevr)
       
  6539         prompt("Hihi Severity")
       
  6540         interest(1)
       
  6541         prop(YES)
       
  6542         promptgroup("70 - Alarm")
       
  6543         pp(TRUE)
       
  6544     }
       
  6545     field(LLSV, DBF_MENU) {
       
  6546         pp(TRUE)
       
  6547         menu(menuAlarmSevr)
       
  6548         prompt("Lolo Severity")
       
  6549         prop(YES)
       
  6550         promptgroup("70 - Alarm")
       
  6551         interest(1)
       
  6552     }
       
  6553     field(HSV, DBF_MENU) {
       
  6554         menu(menuAlarmSevr)
       
  6555         promptgroup("70 - Alarm")
       
  6556         prop(YES)
       
  6557         interest(1)
       
  6558         prompt("High Severity")
       
  6559         pp(TRUE)
       
  6560     }
       
  6561     field(LSV, DBF_MENU) {
       
  6562         pp(TRUE)
       
  6563         prop(YES)
       
  6564         interest(1)
       
  6565         promptgroup("70 - Alarm")
       
  6566         prompt("Low Severity")
       
  6567         menu(menuAlarmSevr)
       
  6568     }
       
  6569     field(HYST, DBF_DOUBLE) {
       
  6570         interest(1)
       
  6571         promptgroup("70 - Alarm")
       
  6572         prompt("Alarm Deadband")
       
  6573     }
       
  6574     field(ADEL, DBF_DOUBLE) {
       
  6575         prompt("Archive Deadband")
       
  6576         interest(1)
       
  6577         promptgroup("80 - Display")
       
  6578     }
       
  6579     field(MDEL, DBF_DOUBLE) {
       
  6580         promptgroup("80 - Display")
       
  6581         interest(1)
       
  6582         prompt("Monitor Deadband")
       
  6583     }
       
  6584     field(A, DBF_DOUBLE) {
       
  6585         prompt("Value of Input A")
       
  6586         pp(TRUE)
       
  6587     }
       
  6588     field(B, DBF_DOUBLE) {
       
  6589         prompt("Value of Input B")
       
  6590         pp(TRUE)
       
  6591     }
       
  6592     field(C, DBF_DOUBLE) {
       
  6593         pp(TRUE)
       
  6594         prompt("Value of Input C")
       
  6595     }
       
  6596     field(D, DBF_DOUBLE) {
       
  6597         pp(TRUE)
       
  6598         prompt("Value of Input D")
       
  6599     }
       
  6600     field(E, DBF_DOUBLE) {
       
  6601         prompt("Value of Input E")
       
  6602         pp(TRUE)
       
  6603     }
       
  6604     field(F, DBF_DOUBLE) {
       
  6605         prompt("Value of Input F")
       
  6606         pp(TRUE)
       
  6607     }
       
  6608     field(G, DBF_DOUBLE) {
       
  6609         pp(TRUE)
       
  6610         prompt("Value of Input G")
       
  6611     }
       
  6612     field(H, DBF_DOUBLE) {
       
  6613         prompt("Value of Input H")
       
  6614         pp(TRUE)
       
  6615     }
       
  6616     field(I, DBF_DOUBLE) {
       
  6617         prompt("Value of Input I")
       
  6618         pp(TRUE)
       
  6619     }
       
  6620     field(J, DBF_DOUBLE) {
       
  6621         prompt("Value of Input J")
       
  6622         pp(TRUE)
       
  6623     }
       
  6624     field(K, DBF_DOUBLE) {
       
  6625         prompt("Value of Input K")
       
  6626         pp(TRUE)
       
  6627     }
       
  6628     field(L, DBF_DOUBLE) {
       
  6629         prompt("Value of Input L")
       
  6630         pp(TRUE)
       
  6631     }
       
  6632     field(OVAL, DBF_DOUBLE) {
       
  6633         prompt("Output Value")
       
  6634         asl(ASL0)
       
  6635     }
       
  6636     field(LA, DBF_DOUBLE) {
       
  6637         special(SPC_NOMOD)
       
  6638         interest(3)
       
  6639         prompt("Prev Value of A")
       
  6640     }
       
  6641     field(LB, DBF_DOUBLE) {
       
  6642         prompt("Prev Value of B")
       
  6643         interest(3)
       
  6644         special(SPC_NOMOD)
       
  6645     }
       
  6646     field(LC, DBF_DOUBLE) {
       
  6647         prompt("Prev Value of C")
       
  6648         interest(3)
       
  6649         special(SPC_NOMOD)
       
  6650     }
       
  6651     field(LD, DBF_DOUBLE) {
       
  6652         prompt("Prev Value of D")
       
  6653         special(SPC_NOMOD)
       
  6654         interest(3)
       
  6655     }
       
  6656     field(LE, DBF_DOUBLE) {
       
  6657         prompt("Prev Value of E")
       
  6658         interest(3)
       
  6659         special(SPC_NOMOD)
       
  6660     }
       
  6661     field(LF, DBF_DOUBLE) {
       
  6662         interest(3)
       
  6663         special(SPC_NOMOD)
       
  6664         prompt("Prev Value of F")
       
  6665     }
       
  6666     field(LG, DBF_DOUBLE) {
       
  6667         interest(3)
       
  6668         special(SPC_NOMOD)
       
  6669         prompt("Prev Value of G")
       
  6670     }
       
  6671     field(LH, DBF_DOUBLE) {
       
  6672         prompt("Prev Value of H")
       
  6673         special(SPC_NOMOD)
       
  6674         interest(3)
       
  6675     }
       
  6676     field(LI, DBF_DOUBLE) {
       
  6677         prompt("Prev Value of I")
       
  6678         interest(3)
       
  6679         special(SPC_NOMOD)
       
  6680     }
       
  6681     field(LJ, DBF_DOUBLE) {
       
  6682         interest(3)
       
  6683         special(SPC_NOMOD)
       
  6684         prompt("Prev Value of J")
       
  6685     }
       
  6686     field(LK, DBF_DOUBLE) {
       
  6687         prompt("Prev Value of K")
       
  6688         interest(3)
       
  6689         special(SPC_NOMOD)
       
  6690     }
       
  6691     field(LL, DBF_DOUBLE) {
       
  6692         prompt("Prev Value of L")
       
  6693         special(SPC_NOMOD)
       
  6694         interest(3)
       
  6695     }
       
  6696     field(POVL, DBF_DOUBLE) {
       
  6697         prompt("Prev Value of OVAL")
       
  6698         asl(ASL0)
       
  6699     }
       
  6700     field(LALM, DBF_DOUBLE) {
       
  6701         special(SPC_NOMOD)
       
  6702         interest(3)
       
  6703         prompt("Last Value Alarmed")
       
  6704     }
       
  6705     field(ALST, DBF_DOUBLE) {
       
  6706         interest(3)
       
  6707         special(SPC_NOMOD)
       
  6708         prompt("Last Value Archived")
       
  6709     }
       
  6710     field(MLST, DBF_DOUBLE) {
       
  6711         prompt("Last Val Monitored")
       
  6712         interest(3)
       
  6713         special(SPC_NOMOD)
       
  6714     }
       
  6715     field(RPCL, DBF_NOACCESS) {
       
  6716         interest(4)
       
  6717         special(SPC_NOMOD)
       
  6718         prompt("Reverse Polish Calc")
       
  6719         extra("char	rpcl[INFIX_TO_POSTFIX_SIZE(80)]")
       
  6720     }
       
  6721     field(ORPC, DBF_NOACCESS) {
       
  6722         extra("char	orpc[INFIX_TO_POSTFIX_SIZE(80)]")
       
  6723         prompt("Reverse Polish OCalc")
       
  6724         interest(4)
       
  6725         special(SPC_NOMOD)
       
  6726     }
  4151     }
  6727 }
  4152 }
  6728 device(calcout, CONSTANT, devCalcoutSoft, "Soft Channel")
  4153 recordtype(subArray) {
  6729 device(calcout, CONSTANT, devCalcoutSoftCallback, "Async Soft Channel")
       
  6730 device(calcout, INST_IO, devcalcoutStream, "stream")
       
  6731 recordtype(histogram) {
       
  6732     %#include "epicsTypes.h"
  4154     %#include "epicsTypes.h"
  6733     %#include "link.h"
  4155     %#include "link.h"
  6734     %#include "epicsMutex.h"
  4156     %#include "epicsMutex.h"
  6735     %#include "ellLib.h"
  4157     %#include "ellLib.h"
  6736     %#include "epicsTime.h"
  4158     %#include "epicsTime.h"
  6737     %#include "callback.h"
       
  6738     field(NAME, DBF_STRING) {
  4159     field(NAME, DBF_STRING) {
       
  4160         prompt("Record Name")
  6739         size(61)
  4161         size(61)
  6740         special(SPC_NOMOD)
  4162         special(SPC_NOMOD)
  6741         prompt("Record Name")
       
  6742     }
  4163     }
  6743     field(DESC, DBF_STRING) {
  4164     field(DESC, DBF_STRING) {
       
  4165         promptgroup("10 - Common")
       
  4166         size(41)
  6744         prompt("Descriptor")
  4167         prompt("Descriptor")
  6745         promptgroup("10 - Common")
       
  6746         size(41)
       
  6747     }
  4168     }
  6748     field(ASG, DBF_STRING) {
  4169     field(ASG, DBF_STRING) {
       
  4170         promptgroup("10 - Common")
       
  4171         special(SPC_AS)
  6749         prompt("Access Security Group")
  4172         prompt("Access Security Group")
  6750         special(SPC_AS)
       
  6751         promptgroup("10 - Common")
       
  6752         size(29)
  4173         size(29)
  6753     }
  4174     }
  6754     field(SCAN, DBF_MENU) {
  4175     field(SCAN, DBF_MENU) {
       
  4176         promptgroup("20 - Scan")
       
  4177         special(SPC_SCAN)
       
  4178         interest(1)
  6755         menu(menuScan)
  4179         menu(menuScan)
  6756         prompt("Scan Mechanism")
  4180         prompt("Scan Mechanism")
       
  4181     }
       
  4182     field(PINI, DBF_MENU) {
       
  4183         promptgroup("20 - Scan")
       
  4184         menu(menuPini)
       
  4185         interest(1)
       
  4186         prompt("Process at iocInit")
       
  4187     }
       
  4188     field(PHAS, DBF_SHORT) {
       
  4189         interest(1)
  6757         special(SPC_SCAN)
  4190         special(SPC_SCAN)
  6758         interest(1)
  4191         promptgroup("20 - Scan")
  6759         promptgroup("20 - Scan")
       
  6760     }
       
  6761     field(PINI, DBF_MENU) {
       
  6762         menu(menuPini)
       
  6763         prompt("Process at iocInit")
       
  6764         interest(1)
       
  6765         promptgroup("20 - Scan")
       
  6766     }
       
  6767     field(PHAS, DBF_SHORT) {
       
  6768         promptgroup("20 - Scan")
       
  6769         interest(1)
       
  6770         special(SPC_SCAN)
       
  6771         prompt("Scan Phase")
  4192         prompt("Scan Phase")
  6772     }
  4193     }
  6773     field(EVNT, DBF_STRING) {
  4194     field(EVNT, DBF_STRING) {
  6774         size(40)
  4195         size(40)
  6775         prompt("Event Name")
  4196         prompt("Event Name")
  6786         promptgroup("20 - Scan")
  4207         promptgroup("20 - Scan")
  6787         interest(1)
  4208         interest(1)
  6788         prompt("Time Stamp Link")
  4209         prompt("Time Stamp Link")
  6789     }
  4210     }
  6790     field(DTYP, DBF_DEVICE) {
  4211     field(DTYP, DBF_DEVICE) {
  6791         promptgroup("10 - Common")
  4212         interest(1)
  6792         interest(1)
  4213         promptgroup("10 - Common")
  6793         prompt("Device Type")
  4214         prompt("Device Type")
  6794     }
  4215     }
  6795     field(DISV, DBF_SHORT) {
  4216     field(DISV, DBF_SHORT) {
  6796         initial("1")
       
  6797         promptgroup("20 - Scan")
       
  6798         prompt("Disable Value")
  4217         prompt("Disable Value")
       
  4218         initial("1")
       
  4219         promptgroup("20 - Scan")
  6799     }
  4220     }
  6800     field(DISA, DBF_SHORT) {
  4221     field(DISA, DBF_SHORT) {
  6801         prompt("Disable")
  4222         prompt("Disable")
  6802     }
  4223     }
  6803     field(SDIS, DBF_INLINK) {
  4224     field(SDIS, DBF_INLINK) {
  6804         promptgroup("20 - Scan")
       
  6805         interest(1)
       
  6806         prompt("Scanning Disable")
  4225         prompt("Scanning Disable")
       
  4226         promptgroup("20 - Scan")
       
  4227         interest(1)
  6807     }
  4228     }
  6808     field(MLOK, DBF_NOACCESS) {
  4229     field(MLOK, DBF_NOACCESS) {
  6809         extra("epicsMutexId        mlok")
  4230         extra("epicsMutexId        mlok")
  6810         prompt("Monitor lock")
  4231         prompt("Monitor lock")
  6811         special(SPC_NOMOD)
  4232         interest(4)
  6812         interest(4)
  4233         special(SPC_NOMOD)
  6813     }
  4234     }
  6814     field(MLIS, DBF_NOACCESS) {
  4235     field(MLIS, DBF_NOACCESS) {
       
  4236         prompt("Monitor List")
  6815         extra("ELLLIST             mlis")
  4237         extra("ELLLIST             mlis")
  6816         prompt("Monitor List")
  4238         special(SPC_NOMOD)
  6817         interest(4)
  4239         interest(4)
  6818         special(SPC_NOMOD)
       
  6819     }
  4240     }
  6820     field(BKLNK, DBF_NOACCESS) {
  4241     field(BKLNK, DBF_NOACCESS) {
       
  4242         interest(4)
       
  4243         special(SPC_NOMOD)
  6821         extra("ELLLIST             bklnk")
  4244         extra("ELLLIST             bklnk")
  6822         special(SPC_NOMOD)
       
  6823         interest(4)
       
  6824         prompt("Backwards link tracking")
  4245         prompt("Backwards link tracking")
  6825     }
  4246     }
  6826     field(DISP, DBF_UCHAR) {
  4247     field(DISP, DBF_UCHAR) {
  6827         prompt("Disable putField")
  4248         prompt("Disable putField")
  6828     }
  4249     }
  6829     field(PROC, DBF_UCHAR) {
  4250     field(PROC, DBF_UCHAR) {
  6830         pp(TRUE)
  4251         interest(3)
  6831         interest(3)
  4252         pp(TRUE)
  6832         prompt("Force Processing")
  4253         prompt("Force Processing")
  6833     }
       
  6834     field(STAT, DBF_MENU) {
       
  6835         menu(menuAlarmStat)
       
  6836         prompt("Alarm Status")
       
  6837         special(SPC_NOMOD)
       
  6838         initial("UDF")
       
  6839     }
       
  6840     field(SEVR, DBF_MENU) {
       
  6841         special(SPC_NOMOD)
       
  6842         prompt("Alarm Severity")
       
  6843         menu(menuAlarmSevr)
       
  6844     }
       
  6845     field(NSTA, DBF_MENU) {
       
  6846         prompt("New Alarm Status")
       
  6847         interest(2)
       
  6848         special(SPC_NOMOD)
       
  6849         menu(menuAlarmStat)
       
  6850     }
       
  6851     field(NSEV, DBF_MENU) {
       
  6852         prompt("New Alarm Severity")
       
  6853         interest(2)
       
  6854         special(SPC_NOMOD)
       
  6855         menu(menuAlarmSevr)
       
  6856     }
       
  6857     field(ACKS, DBF_MENU) {
       
  6858         menu(menuAlarmSevr)
       
  6859         interest(2)
       
  6860         special(SPC_NOMOD)
       
  6861         prompt("Alarm Ack Severity")
       
  6862     }
       
  6863     field(ACKT, DBF_MENU) {
       
  6864         initial("YES")
       
  6865         prompt("Alarm Ack Transient")
       
  6866         interest(2)
       
  6867         special(SPC_NOMOD)
       
  6868         promptgroup("70 - Alarm")
       
  6869         menu(menuYesNo)
       
  6870     }
       
  6871     field(DISS, DBF_MENU) {
       
  6872         prompt("Disable Alarm Sevrty")
       
  6873         interest(1)
       
  6874         promptgroup("70 - Alarm")
       
  6875         menu(menuAlarmSevr)
       
  6876     }
       
  6877     field(LCNT, DBF_UCHAR) {
       
  6878         special(SPC_NOMOD)
       
  6879         interest(2)
       
  6880         prompt("Lock Count")
       
  6881     }
       
  6882     field(PACT, DBF_UCHAR) {
       
  6883         prompt("Record active")
       
  6884         interest(1)
       
  6885         special(SPC_NOMOD)
       
  6886     }
       
  6887     field(PUTF, DBF_UCHAR) {
       
  6888         interest(1)
       
  6889         special(SPC_NOMOD)
       
  6890         prompt("dbPutField process")
       
  6891     }
       
  6892     field(RPRO, DBF_UCHAR) {
       
  6893         interest(1)
       
  6894         special(SPC_NOMOD)
       
  6895         prompt("Reprocess ")
       
  6896     }
       
  6897     field(ASP, DBF_NOACCESS) {
       
  6898         extra("struct asgMember    *asp")
       
  6899         interest(4)
       
  6900         special(SPC_NOMOD)
       
  6901         prompt("Access Security Pvt")
       
  6902     }
       
  6903     field(PPN, DBF_NOACCESS) {
       
  6904         extra("struct processNotify *ppn")
       
  6905         prompt("pprocessNotify")
       
  6906         special(SPC_NOMOD)
       
  6907         interest(4)
       
  6908     }
       
  6909     field(PPNR, DBF_NOACCESS) {
       
  6910         extra("struct processNotifyRecord *ppnr")
       
  6911         prompt("pprocessNotifyRecord")
       
  6912         interest(4)
       
  6913         special(SPC_NOMOD)
       
  6914     }
       
  6915     field(SPVT, DBF_NOACCESS) {
       
  6916         interest(4)
       
  6917         special(SPC_NOMOD)
       
  6918         prompt("Scan Private")
       
  6919         extra("struct scan_element *spvt")
       
  6920     }
       
  6921     field(RSET, DBF_NOACCESS) {
       
  6922         prompt("Address of RSET")
       
  6923         interest(4)
       
  6924         special(SPC_NOMOD)
       
  6925         extra("struct typed_rset   *rset")
       
  6926     }
       
  6927     field(DSET, DBF_NOACCESS) {
       
  6928         interest(4)
       
  6929         special(SPC_NOMOD)
       
  6930         prompt("DSET address")
       
  6931         extra("struct dset         *dset")
       
  6932     }
       
  6933     field(DPVT, DBF_NOACCESS) {
       
  6934         prompt("Device Private")
       
  6935         interest(4)
       
  6936         special(SPC_NOMOD)
       
  6937         extra("void                *dpvt")
       
  6938     }
       
  6939     field(RDES, DBF_NOACCESS) {
       
  6940         extra("struct dbRecordType *rdes")
       
  6941         prompt("Address of dbRecordType")
       
  6942         special(SPC_NOMOD)
       
  6943         interest(4)
       
  6944     }
       
  6945     field(LSET, DBF_NOACCESS) {
       
  6946         interest(4)
       
  6947         special(SPC_NOMOD)
       
  6948         prompt("Lock Set")
       
  6949         extra("struct lockRecord   *lset")
       
  6950     }
       
  6951     field(PRIO, DBF_MENU) {
       
  6952         interest(1)
       
  6953         special(SPC_SCAN)
       
  6954         promptgroup("20 - Scan")
       
  6955         prompt("Scheduling Priority")
       
  6956         menu(menuPriority)
       
  6957     }
       
  6958     field(TPRO, DBF_UCHAR) {
       
  6959         prompt("Trace Processing")
       
  6960     }
       
  6961     field(BKPT, DBF_NOACCESS) {
       
  6962         special(SPC_NOMOD)
       
  6963         interest(1)
       
  6964         prompt("Break Point")
       
  6965         extra("char                bkpt")
       
  6966     }
       
  6967     field(UDF, DBF_UCHAR) {
       
  6968         pp(TRUE)
       
  6969         initial("1")
       
  6970         prompt("Undefined")
       
  6971         promptgroup("10 - Common")
       
  6972         interest(1)
       
  6973     }
       
  6974     field(UDFS, DBF_MENU) {
       
  6975         menu(menuAlarmSevr)
       
  6976         prompt("Undefined Alarm Sevrty")
       
  6977         interest(1)
       
  6978         promptgroup("70 - Alarm")
       
  6979         initial("INVALID")
       
  6980     }
       
  6981     field(TIME, DBF_NOACCESS) {
       
  6982         prompt("Time")
       
  6983         interest(2)
       
  6984         special(SPC_NOMOD)
       
  6985         extra("epicsTimeStamp      time")
       
  6986     }
       
  6987     field(FLNK, DBF_FWDLINK) {
       
  6988         prompt("Forward Process Link")
       
  6989         promptgroup("20 - Scan")
       
  6990         interest(1)
       
  6991     }
       
  6992     field(VAL, DBF_NOACCESS) {
       
  6993         extra("void *	val")
       
  6994         asl(ASL0)
       
  6995         special(SPC_DBADDR)
       
  6996         prompt("Value")
       
  6997     }
       
  6998     field(NELM, DBF_USHORT) {
       
  6999         prompt("Num of Array Elements")
       
  7000         special(SPC_NOMOD)
       
  7001         interest(1)
       
  7002         promptgroup("30 - Action")
       
  7003         initial("1")
       
  7004     }
       
  7005     field(CSTA, DBF_SHORT) {
       
  7006         initial("1")
       
  7007         special(SPC_NOMOD)
       
  7008         interest(1)
       
  7009         prompt("Collection Status")
       
  7010     }
       
  7011     field(CMD, DBF_MENU) {
       
  7012         prompt("Collection Control")
       
  7013         interest(1)
       
  7014         special(SPC_CALC)
       
  7015         menu(histogramCMD)
       
  7016         asl(ASL0)
       
  7017     }
       
  7018     field(ULIM, DBF_DOUBLE) {
       
  7019         interest(1)
       
  7020         prop(YES)
       
  7021         special(SPC_RESET)
       
  7022         promptgroup("30 - Action")
       
  7023         prompt("Upper Signal Limit")
       
  7024     }
       
  7025     field(LLIM, DBF_DOUBLE) {
       
  7026         prompt("Lower Signal Limit ")
       
  7027         prop(YES)
       
  7028         interest(1)
       
  7029         special(SPC_RESET)
       
  7030         promptgroup("30 - Action")
       
  7031     }
       
  7032     field(WDTH, DBF_DOUBLE) {
       
  7033         prompt("Element Width")
       
  7034         interest(3)
       
  7035         special(SPC_NOMOD)
       
  7036     }
       
  7037     field(SGNL, DBF_DOUBLE) {
       
  7038         special(SPC_MOD)
       
  7039         prompt("Signal Value")
       
  7040     }
       
  7041     field(PREC, DBF_SHORT) {
       
  7042         interest(1)
       
  7043         prop(YES)
       
  7044         promptgroup("80 - Display")
       
  7045         prompt("Display Precision")
       
  7046     }
       
  7047     field(SVL, DBF_INLINK) {
       
  7048         prompt("Signal Value Location")
       
  7049         promptgroup("40 - Input")
       
  7050         interest(1)
       
  7051     }
       
  7052     field(BPTR, DBF_NOACCESS) {
       
  7053         extra("epicsUInt32 *bptr")
       
  7054         interest(4)
       
  7055         special(SPC_NOMOD)
       
  7056         prompt("Buffer Pointer")
       
  7057     }
       
  7058     field(WDOG, DBF_NOACCESS) {
       
  7059         extra("void *  wdog")
       
  7060         interest(4)
       
  7061         special(SPC_NOMOD)
       
  7062         prompt("Watchdog callback")
       
  7063     }
       
  7064     field(MDEL, DBF_SHORT) {
       
  7065         prompt("Monitor Count Deadband")
       
  7066         promptgroup("80 - Display")
       
  7067         interest(1)
       
  7068     }
       
  7069     field(MCNT, DBF_SHORT) {
       
  7070         interest(3)
       
  7071         special(SPC_NOMOD)
       
  7072         prompt("Counts Since Monitor")
       
  7073     }
       
  7074     field(SDEL, DBF_DOUBLE) {
       
  7075         prompt("Monitor Seconds Dband")
       
  7076         special(SPC_RESET)
       
  7077         interest(1)
       
  7078         promptgroup("80 - Display")
       
  7079     }
       
  7080     field(SIOL, DBF_INLINK) {
       
  7081         prompt("Simulation Input Link")
       
  7082         interest(1)
       
  7083         promptgroup("90 - Simulate")
       
  7084     }
       
  7085     field(SVAL, DBF_DOUBLE) {
       
  7086         prompt("Simulation Value")
       
  7087     }
       
  7088     field(SIML, DBF_INLINK) {
       
  7089         prompt("Simulation Mode Link")
       
  7090         interest(1)
       
  7091         promptgroup("90 - Simulate")
       
  7092     }
       
  7093     field(SIMM, DBF_MENU) {
       
  7094         prompt("Simulation Mode")
       
  7095         interest(1)
       
  7096         special(SPC_MOD)
       
  7097         menu(menuYesNo)
       
  7098     }
       
  7099     field(SIMS, DBF_MENU) {
       
  7100         menu(menuAlarmSevr)
       
  7101         prompt("Simulation Mode Severity")
       
  7102         interest(2)
       
  7103         promptgroup("90 - Simulate")
       
  7104     }
       
  7105     field(OLDSIMM, DBF_MENU) {
       
  7106         interest(4)
       
  7107         special(SPC_NOMOD)
       
  7108         prompt("Prev. Simulation Mode")
       
  7109         menu(menuSimm)
       
  7110     }
       
  7111     field(SSCN, DBF_MENU) {
       
  7112         prompt("Sim. Mode Scan")
       
  7113         promptgroup("90 - Simulate")
       
  7114         interest(1)
       
  7115         menu(menuScan)
       
  7116         initial("65535")
       
  7117     }
       
  7118     field(SDLY, DBF_DOUBLE) {
       
  7119         initial("-1.0")
       
  7120         promptgroup("90 - Simulate")
       
  7121         interest(2)
       
  7122         prompt("Sim. Mode Async Delay")
       
  7123     }
       
  7124     field(SIMPVT, DBF_NOACCESS) {
       
  7125         extra("CALLBACK            *simpvt")
       
  7126         special(SPC_NOMOD)
       
  7127         interest(4)
       
  7128         prompt("Sim. Mode Private")
       
  7129     }
       
  7130     field(HOPR, DBF_ULONG) {
       
  7131         prompt("High Operating Range")
       
  7132         interest(1)
       
  7133         prop(YES)
       
  7134         promptgroup("80 - Display")
       
  7135     }
       
  7136     field(LOPR, DBF_ULONG) {
       
  7137         promptgroup("80 - Display")
       
  7138         prop(YES)
       
  7139         interest(1)
       
  7140         prompt("Low Operating Range")
       
  7141     }
       
  7142 }
       
  7143 device(histogram, CONSTANT, devHistogramSoft, "Soft Channel")
       
  7144 recordtype(mbbiDirect) {
       
  7145     %#include "epicsTypes.h"
       
  7146     %#include "link.h"
       
  7147     %#include "epicsMutex.h"
       
  7148     %#include "ellLib.h"
       
  7149     %#include "epicsTime.h"
       
  7150     %#include "callback.h"
       
  7151     field(NAME, DBF_STRING) {
       
  7152         prompt("Record Name")
       
  7153         special(SPC_NOMOD)
       
  7154         size(61)
       
  7155     }
       
  7156     field(DESC, DBF_STRING) {
       
  7157         prompt("Descriptor")
       
  7158         promptgroup("10 - Common")
       
  7159         size(41)
       
  7160     }
       
  7161     field(ASG, DBF_STRING) {
       
  7162         size(29)
       
  7163         prompt("Access Security Group")
       
  7164         special(SPC_AS)
       
  7165         promptgroup("10 - Common")
       
  7166     }
       
  7167     field(SCAN, DBF_MENU) {
       
  7168         menu(menuScan)
       
  7169         prompt("Scan Mechanism")
       
  7170         interest(1)
       
  7171         special(SPC_SCAN)
       
  7172         promptgroup("20 - Scan")
       
  7173     }
       
  7174     field(PINI, DBF_MENU) {
       
  7175         menu(menuPini)
       
  7176         promptgroup("20 - Scan")
       
  7177         interest(1)
       
  7178         prompt("Process at iocInit")
       
  7179     }
       
  7180     field(PHAS, DBF_SHORT) {
       
  7181         prompt("Scan Phase")
       
  7182         interest(1)
       
  7183         special(SPC_SCAN)
       
  7184         promptgroup("20 - Scan")
       
  7185     }
       
  7186     field(EVNT, DBF_STRING) {
       
  7187         special(SPC_SCAN)
       
  7188         interest(1)
       
  7189         promptgroup("20 - Scan")
       
  7190         prompt("Event Name")
       
  7191         size(40)
       
  7192     }
       
  7193     field(TSE, DBF_SHORT) {
       
  7194         interest(1)
       
  7195         promptgroup("20 - Scan")
       
  7196         prompt("Time Stamp Event")
       
  7197     }
       
  7198     field(TSEL, DBF_INLINK) {
       
  7199         promptgroup("20 - Scan")
       
  7200         interest(1)
       
  7201         prompt("Time Stamp Link")
       
  7202     }
       
  7203     field(DTYP, DBF_DEVICE) {
       
  7204         prompt("Device Type")
       
  7205         interest(1)
       
  7206         promptgroup("10 - Common")
       
  7207     }
       
  7208     field(DISV, DBF_SHORT) {
       
  7209         prompt("Disable Value")
       
  7210         promptgroup("20 - Scan")
       
  7211         initial("1")
       
  7212     }
       
  7213     field(DISA, DBF_SHORT) {
       
  7214         prompt("Disable")
       
  7215     }
       
  7216     field(SDIS, DBF_INLINK) {
       
  7217         prompt("Scanning Disable")
       
  7218         promptgroup("20 - Scan")
       
  7219         interest(1)
       
  7220     }
       
  7221     field(MLOK, DBF_NOACCESS) {
       
  7222         special(SPC_NOMOD)
       
  7223         interest(4)
       
  7224         prompt("Monitor lock")
       
  7225         extra("epicsMutexId        mlok")
       
  7226     }
       
  7227     field(MLIS, DBF_NOACCESS) {
       
  7228         extra("ELLLIST             mlis")
       
  7229         interest(4)
       
  7230         special(SPC_NOMOD)
       
  7231         prompt("Monitor List")
       
  7232     }
       
  7233     field(BKLNK, DBF_NOACCESS) {
       
  7234         prompt("Backwards link tracking")
       
  7235         special(SPC_NOMOD)
       
  7236         interest(4)
       
  7237         extra("ELLLIST             bklnk")
       
  7238     }
       
  7239     field(DISP, DBF_UCHAR) {
       
  7240         prompt("Disable putField")
       
  7241     }
       
  7242     field(PROC, DBF_UCHAR) {
       
  7243         interest(3)
       
  7244         prompt("Force Processing")
       
  7245         pp(TRUE)
       
  7246     }
  4254     }
  7247     field(STAT, DBF_MENU) {
  4255     field(STAT, DBF_MENU) {
  7248         initial("UDF")
  4256         initial("UDF")
  7249         prompt("Alarm Status")
  4257         prompt("Alarm Status")
  7250         special(SPC_NOMOD)
  4258         special(SPC_NOMOD)
  7251         menu(menuAlarmStat)
  4259         menu(menuAlarmStat)
  7252     }
  4260     }
  7253     field(SEVR, DBF_MENU) {
  4261     field(SEVR, DBF_MENU) {
  7254         menu(menuAlarmSevr)
       
  7255         special(SPC_NOMOD)
       
  7256         prompt("Alarm Severity")
  4262         prompt("Alarm Severity")
       
  4263         menu(menuAlarmSevr)
       
  4264         special(SPC_NOMOD)
  7257     }
  4265     }
  7258     field(NSTA, DBF_MENU) {
  4266     field(NSTA, DBF_MENU) {
       
  4267         prompt("New Alarm Status")
       
  4268         special(SPC_NOMOD)
  7259         menu(menuAlarmStat)
  4269         menu(menuAlarmStat)
  7260         prompt("New Alarm Status")
       
  7261         special(SPC_NOMOD)
       
  7262         interest(2)
  4270         interest(2)
  7263     }
  4271     }
  7264     field(NSEV, DBF_MENU) {
  4272     field(NSEV, DBF_MENU) {
  7265         interest(2)
       
  7266         special(SPC_NOMOD)
       
  7267         prompt("New Alarm Severity")
  4273         prompt("New Alarm Severity")
  7268         menu(menuAlarmSevr)
  4274         menu(menuAlarmSevr)
       
  4275         interest(2)
       
  4276         special(SPC_NOMOD)
  7269     }
  4277     }
  7270     field(ACKS, DBF_MENU) {
  4278     field(ACKS, DBF_MENU) {
  7271         menu(menuAlarmSevr)
  4279         special(SPC_NOMOD)
  7272         special(SPC_NOMOD)
  4280         menu(menuAlarmSevr)
  7273         interest(2)
  4281         interest(2)
  7274         prompt("Alarm Ack Severity")
  4282         prompt("Alarm Ack Severity")
  7275     }
  4283     }
  7276     field(ACKT, DBF_MENU) {
  4284     field(ACKT, DBF_MENU) {
       
  4285         special(SPC_NOMOD)
       
  4286         menu(menuYesNo)
       
  4287         interest(2)
       
  4288         promptgroup("70 - Alarm")
  7277         initial("YES")
  4289         initial("YES")
  7278         prompt("Alarm Ack Transient")
  4290         prompt("Alarm Ack Transient")
  7279         interest(2)
       
  7280         promptgroup("70 - Alarm")
       
  7281         special(SPC_NOMOD)
       
  7282         menu(menuYesNo)
       
  7283     }
  4291     }
  7284     field(DISS, DBF_MENU) {
  4292     field(DISS, DBF_MENU) {
  7285         menu(menuAlarmSevr)
  4293         interest(1)
  7286         promptgroup("70 - Alarm")
  4294         menu(menuAlarmSevr)
  7287         interest(1)
  4295         promptgroup("70 - Alarm")
  7288         prompt("Disable Alarm Sevrty")
  4296         prompt("Disable Alarm Sevrty")
  7289     }
  4297     }
  7290     field(LCNT, DBF_UCHAR) {
  4298     field(LCNT, DBF_UCHAR) {
       
  4299         special(SPC_NOMOD)
       
  4300         interest(2)
  7291         prompt("Lock Count")
  4301         prompt("Lock Count")
  7292         interest(2)
       
  7293         special(SPC_NOMOD)
       
  7294     }
  4302     }
  7295     field(PACT, DBF_UCHAR) {
  4303     field(PACT, DBF_UCHAR) {
  7296         prompt("Record active")
  4304         prompt("Record active")
  7297         special(SPC_NOMOD)
  4305         special(SPC_NOMOD)
  7298         interest(1)
  4306         interest(1)
  7299     }
  4307     }
  7300     field(PUTF, DBF_UCHAR) {
  4308     field(PUTF, DBF_UCHAR) {
  7301         special(SPC_NOMOD)
       
  7302         interest(1)
       
  7303         prompt("dbPutField process")
  4309         prompt("dbPutField process")
       
  4310         special(SPC_NOMOD)
       
  4311         interest(1)
  7304     }
  4312     }
  7305     field(RPRO, DBF_UCHAR) {
  4313     field(RPRO, DBF_UCHAR) {
  7306         interest(1)
  4314         interest(1)
  7307         special(SPC_NOMOD)
  4315         special(SPC_NOMOD)
  7308         prompt("Reprocess ")
  4316         prompt("Reprocess ")
  7309     }
  4317     }
  7310     field(ASP, DBF_NOACCESS) {
  4318     field(ASP, DBF_NOACCESS) {
  7311         interest(4)
       
  7312         special(SPC_NOMOD)
       
  7313         prompt("Access Security Pvt")
  4319         prompt("Access Security Pvt")
  7314         extra("struct asgMember    *asp")
  4320         extra("struct asgMember    *asp")
       
  4321         interest(4)
       
  4322         special(SPC_NOMOD)
  7315     }
  4323     }
  7316     field(PPN, DBF_NOACCESS) {
  4324     field(PPN, DBF_NOACCESS) {
       
  4325         interest(4)
       
  4326         special(SPC_NOMOD)
  7317         extra("struct processNotify *ppn")
  4327         extra("struct processNotify *ppn")
  7318         interest(4)
       
  7319         special(SPC_NOMOD)
       
  7320         prompt("pprocessNotify")
  4328         prompt("pprocessNotify")
  7321     }
  4329     }
  7322     field(PPNR, DBF_NOACCESS) {
  4330     field(PPNR, DBF_NOACCESS) {
  7323         special(SPC_NOMOD)
  4331         special(SPC_NOMOD)
  7324         interest(4)
  4332         interest(4)
       
  4333         extra("struct processNotifyRecord *ppnr")
  7325         prompt("pprocessNotifyRecord")
  4334         prompt("pprocessNotifyRecord")
  7326         extra("struct processNotifyRecord *ppnr")
       
  7327     }
  4335     }
  7328     field(SPVT, DBF_NOACCESS) {
  4336     field(SPVT, DBF_NOACCESS) {
       
  4337         interest(4)
       
  4338         special(SPC_NOMOD)
  7329         prompt("Scan Private")
  4339         prompt("Scan Private")
  7330         special(SPC_NOMOD)
       
  7331         interest(4)
       
  7332         extra("struct scan_element *spvt")
  4340         extra("struct scan_element *spvt")
  7333     }
  4341     }
  7334     field(RSET, DBF_NOACCESS) {
  4342     field(RSET, DBF_NOACCESS) {
       
  4343         interest(4)
       
  4344         special(SPC_NOMOD)
  7335         prompt("Address of RSET")
  4345         prompt("Address of RSET")
  7336         special(SPC_NOMOD)
       
  7337         interest(4)
       
  7338         extra("struct typed_rset   *rset")
  4346         extra("struct typed_rset   *rset")
  7339     }
  4347     }
  7340     field(DSET, DBF_NOACCESS) {
  4348     field(DSET, DBF_NOACCESS) {
       
  4349         special(SPC_NOMOD)
       
  4350         interest(4)
       
  4351         prompt("DSET address")
  7341         extra("struct dset         *dset")
  4352         extra("struct dset         *dset")
  7342         special(SPC_NOMOD)
       
  7343         interest(4)
       
  7344         prompt("DSET address")
       
  7345     }
  4353     }
  7346     field(DPVT, DBF_NOACCESS) {
  4354     field(DPVT, DBF_NOACCESS) {
       
  4355         extra("void                *dpvt")
  7347         prompt("Device Private")
  4356         prompt("Device Private")
  7348         interest(4)
  4357         interest(4)
  7349         special(SPC_NOMOD)
  4358         special(SPC_NOMOD)
  7350         extra("void                *dpvt")
       
  7351     }
  4359     }
  7352     field(RDES, DBF_NOACCESS) {
  4360     field(RDES, DBF_NOACCESS) {
       
  4361         prompt("Address of dbRecordType")
  7353         extra("struct dbRecordType *rdes")
  4362         extra("struct dbRecordType *rdes")
  7354         prompt("Address of dbRecordType")
  4363         interest(4)
  7355         special(SPC_NOMOD)
  4364         special(SPC_NOMOD)
  7356         interest(4)
       
  7357     }
  4365     }
  7358     field(LSET, DBF_NOACCESS) {
  4366     field(LSET, DBF_NOACCESS) {
  7359         extra("struct lockRecord   *lset")
  4367         extra("struct lockRecord   *lset")
  7360         prompt("Lock Set")
  4368         prompt("Lock Set")
  7361         special(SPC_NOMOD)
  4369         interest(4)
  7362         interest(4)
  4370         special(SPC_NOMOD)
  7363     }
  4371     }
  7364     field(PRIO, DBF_MENU) {
  4372     field(PRIO, DBF_MENU) {
  7365         prompt("Scheduling Priority")
  4373         prompt("Scheduling Priority")
       
  4374         promptgroup("20 - Scan")
  7366         special(SPC_SCAN)
  4375         special(SPC_SCAN)
  7367         interest(1)
  4376         interest(1)
  7368         promptgroup("20 - Scan")
       
  7369         menu(menuPriority)
  4377         menu(menuPriority)
  7370     }
  4378     }
  7371     field(TPRO, DBF_UCHAR) {
  4379     field(TPRO, DBF_UCHAR) {
  7372         prompt("Trace Processing")
  4380         prompt("Trace Processing")
  7373     }
  4381     }
  7377         prompt("Break Point")
  4385         prompt("Break Point")
  7378         extra("char                bkpt")
  4386         extra("char                bkpt")
  7379     }
  4387     }
  7380     field(UDF, DBF_UCHAR) {
  4388     field(UDF, DBF_UCHAR) {
  7381         prompt("Undefined")
  4389         prompt("Undefined")
  7382         promptgroup("10 - Common")
  4390         initial("1")
  7383         interest(1)
  4391         pp(TRUE)
  7384         pp(TRUE)
  4392         promptgroup("10 - Common")
  7385         initial("1")
  4393         interest(1)
  7386     }
  4394     }
  7387     field(UDFS, DBF_MENU) {
  4395     field(UDFS, DBF_MENU) {
       
  4396         promptgroup("70 - Alarm")
       
  4397         interest(1)
       
  4398         menu(menuAlarmSevr)
       
  4399         prompt("Undefined Alarm Sevrty")
  7388         initial("INVALID")
  4400         initial("INVALID")
  7389         prompt("Undefined Alarm Sevrty")
       
  7390         interest(1)
       
  7391         promptgroup("70 - Alarm")
       
  7392         menu(menuAlarmSevr)
       
  7393     }
  4401     }
  7394     field(TIME, DBF_NOACCESS) {
  4402     field(TIME, DBF_NOACCESS) {
       
  4403         prompt("Time")
  7395         extra("epicsTimeStamp      time")
  4404         extra("epicsTimeStamp      time")
  7396         interest(2)
  4405         special(SPC_NOMOD)
  7397         special(SPC_NOMOD)
  4406         interest(2)
  7398         prompt("Time")
       
  7399     }
  4407     }
  7400     field(FLNK, DBF_FWDLINK) {
  4408     field(FLNK, DBF_FWDLINK) {
  7401         interest(1)
  4409         interest(1)
  7402         promptgroup("20 - Scan")
  4410         promptgroup("20 - Scan")
  7403         prompt("Forward Process Link")
  4411         prompt("Forward Process Link")
  7404     }
  4412     }
  7405     field(VAL, DBF_LONG) {
  4413     field(VAL, DBF_NOACCESS) {
  7406         pp(TRUE)
  4414         pp(TRUE)
  7407         prompt("Current Value")
  4415         special(SPC_DBADDR)
       
  4416         prompt("Value")
       
  4417         extra("void *		val")
       
  4418         asl(ASL0)
       
  4419     }
       
  4420     field(PREC, DBF_SHORT) {
       
  4421         promptgroup("80 - Display")
       
  4422         interest(1)
       
  4423         prop(YES)
       
  4424         prompt("Display Precision")
       
  4425     }
       
  4426     field(FTVL, DBF_MENU) {
       
  4427         interest(1)
       
  4428         menu(menuFtype)
       
  4429         special(SPC_NOMOD)
       
  4430         promptgroup("30 - Action")
       
  4431         prompt("Field Type of Value")
       
  4432     }
       
  4433     field(INP, DBF_INLINK) {
       
  4434         interest(1)
  7408         promptgroup("40 - Input")
  4435         promptgroup("40 - Input")
  7409         asl(ASL0)
       
  7410     }
       
  7411     field(NOBT, DBF_SHORT) {
       
  7412         interest(1)
       
  7413         promptgroup("40 - Input")
       
  7414         special(SPC_NOMOD)
       
  7415         prompt("Number of Bits")
       
  7416     }
       
  7417     field(INP, DBF_INLINK) {
       
  7418         prompt("Input Specification")
  4436         prompt("Input Specification")
  7419         promptgroup("40 - Input")
  4437     }
  7420         interest(1)
  4438     field(EGU, DBF_STRING) {
  7421     }
  4439         promptgroup("80 - Display")
  7422     field(RVAL, DBF_ULONG) {
  4440         interest(1)
  7423         pp(TRUE)
  4441         prop(YES)
  7424         prompt("Raw Value")
  4442         prompt("Engineering Units")
  7425     }
  4443         size(16)
  7426     field(ORAW, DBF_ULONG) {
  4444     }
  7427         prompt("Prev Raw Value")
  4445     field(HOPR, DBF_DOUBLE) {
  7428         interest(3)
  4446         promptgroup("80 - Display")
  7429         special(SPC_NOMOD)
  4447         prop(YES)
  7430     }
  4448         interest(1)
  7431     field(MASK, DBF_ULONG) {
  4449         prompt("High Operating Range")
  7432         special(SPC_NOMOD)
  4450     }
  7433         interest(1)
  4451     field(LOPR, DBF_DOUBLE) {
  7434         prompt("Hardware Mask")
  4452         prompt("Low Operating Range")
  7435     }
  4453         promptgroup("80 - Display")
  7436     field(MLST, DBF_LONG) {
  4454         prop(YES)
  7437         special(SPC_NOMOD)
  4455         interest(1)
  7438         interest(3)
  4456     }
  7439         prompt("Last Value Monitored")
  4457     field(MALM, DBF_ULONG) {
  7440     }
  4458         promptgroup("30 - Action")
  7441     field(SHFT, DBF_USHORT) {
  4459         interest(1)
  7442         prompt("Shift")
  4460         special(SPC_NOMOD)
  7443         interest(1)
  4461         prompt("Maximum Elements")
  7444         promptgroup("40 - Input")
  4462         initial("1")
  7445     }
  4463     }
  7446     field(SIOL, DBF_INLINK) {
  4464     field(NELM, DBF_ULONG) {
  7447         prompt("Simulation Input Link")
  4465         initial("1")
  7448         interest(1)
  4466         prompt("Number of Elements")
  7449         promptgroup("90 - Simulate")
  4467         pp(TRUE)
  7450     }
  4468         promptgroup("30 - Action")
  7451     field(SVAL, DBF_LONG) {
  4469     }
  7452         prompt("Simulation Value")
  4470     field(INDX, DBF_ULONG) {
  7453     }
  4471         pp(TRUE)
  7454     field(SIML, DBF_INLINK) {
  4472         promptgroup("30 - Action")
  7455         prompt("Simulation Mode Link")
  4473         prompt("Substring Index")
  7456         promptgroup("90 - Simulate")
  4474     }
  7457         interest(1)
  4475     field(BUSY, DBF_SHORT) {
  7458     }
  4476         special(SPC_NOMOD)
  7459     field(SIMM, DBF_MENU) {
  4477         prompt("Busy Indicator")
  7460         prompt("Simulation Mode")
  4478     }
  7461         special(SPC_MOD)
  4479     field(NORD, DBF_LONG) {
  7462         interest(1)
  4480         special(SPC_NOMOD)
  7463         menu(menuSimm)
  4481         prompt("Number elements read")
  7464     }
  4482     }
  7465     field(SIMS, DBF_MENU) {
  4483     field(BPTR, DBF_NOACCESS) {
  7466         interest(2)
  4484         interest(4)
  7467         promptgroup("90 - Simulate")
  4485         special(SPC_NOMOD)
  7468         prompt("Simulation Mode Severity")
  4486         prompt("Buffer Pointer")
  7469         menu(menuAlarmSevr)
  4487         extra("void *		bptr")
  7470     }
       
  7471     field(OLDSIMM, DBF_MENU) {
       
  7472         interest(4)
       
  7473         special(SPC_NOMOD)
       
  7474         prompt("Prev. Simulation Mode")
       
  7475         menu(menuSimm)
       
  7476     }
       
  7477     field(SSCN, DBF_MENU) {
       
  7478         initial("65535")
       
  7479         menu(menuScan)
       
  7480         interest(1)
       
  7481         promptgroup("90 - Simulate")
       
  7482         prompt("Sim. Mode Scan")
       
  7483     }
       
  7484     field(SDLY, DBF_DOUBLE) {
       
  7485         prompt("Sim. Mode Async Delay")
       
  7486         interest(2)
       
  7487         promptgroup("90 - Simulate")
       
  7488         initial("-1.0")
       
  7489     }
       
  7490     field(SIMPVT, DBF_NOACCESS) {
       
  7491         extra("CALLBACK            *simpvt")
       
  7492         interest(4)
       
  7493         special(SPC_NOMOD)
       
  7494         prompt("Sim. Mode Private")
       
  7495     }
       
  7496     field(B0, DBF_UCHAR) {
       
  7497         pp(TRUE)
       
  7498         interest(1)
       
  7499         prompt("Bit 0")
       
  7500     }
       
  7501     field(B1, DBF_UCHAR) {
       
  7502         prompt("Bit 1")
       
  7503         interest(1)
       
  7504         pp(TRUE)
       
  7505     }
       
  7506     field(B2, DBF_UCHAR) {
       
  7507         pp(TRUE)
       
  7508         interest(1)
       
  7509         prompt("Bit 2")
       
  7510     }
       
  7511     field(B3, DBF_UCHAR) {
       
  7512         pp(TRUE)
       
  7513         prompt("Bit 3")
       
  7514         interest(1)
       
  7515     }
       
  7516     field(B4, DBF_UCHAR) {
       
  7517         prompt("Bit 4")
       
  7518         interest(1)
       
  7519         pp(TRUE)
       
  7520     }
       
  7521     field(B5, DBF_UCHAR) {
       
  7522         pp(TRUE)
       
  7523         prompt("Bit 5")
       
  7524         interest(1)
       
  7525     }
       
  7526     field(B6, DBF_UCHAR) {
       
  7527         interest(1)
       
  7528         prompt("Bit 6")
       
  7529         pp(TRUE)
       
  7530     }
       
  7531     field(B7, DBF_UCHAR) {
       
  7532         pp(TRUE)
       
  7533         interest(1)
       
  7534         prompt("Bit 7")
       
  7535     }
       
  7536     field(B8, DBF_UCHAR) {
       
  7537         interest(1)
       
  7538         prompt("Bit 8")
       
  7539         pp(TRUE)
       
  7540     }
       
  7541     field(B9, DBF_UCHAR) {
       
  7542         prompt("Bit 9")
       
  7543         interest(1)
       
  7544         pp(TRUE)
       
  7545     }
       
  7546     field(BA, DBF_UCHAR) {
       
  7547         pp(TRUE)
       
  7548         interest(1)
       
  7549         prompt("Bit 10")
       
  7550     }
       
  7551     field(BB, DBF_UCHAR) {
       
  7552         pp(TRUE)
       
  7553         interest(1)
       
  7554         prompt("Bit 11")
       
  7555     }
       
  7556     field(BC, DBF_UCHAR) {
       
  7557         prompt("Bit 12")
       
  7558         interest(1)
       
  7559         pp(TRUE)
       
  7560     }
       
  7561     field(BD, DBF_UCHAR) {
       
  7562         pp(TRUE)
       
  7563         prompt("Bit 13")
       
  7564         interest(1)
       
  7565     }
       
  7566     field(BE, DBF_UCHAR) {
       
  7567         interest(1)
       
  7568         prompt("Bit 14")
       
  7569         pp(TRUE)
       
  7570     }
       
  7571     field(BF, DBF_UCHAR) {
       
  7572         prompt("Bit 15")
       
  7573         interest(1)
       
  7574         pp(TRUE)
       
  7575     }
       
  7576     field(B10, DBF_UCHAR) {
       
  7577         pp(TRUE)
       
  7578         interest(1)
       
  7579         prompt("Bit 16")
       
  7580     }
       
  7581     field(B11, DBF_UCHAR) {
       
  7582         prompt("Bit 17")
       
  7583         interest(1)
       
  7584         pp(TRUE)
       
  7585     }
       
  7586     field(B12, DBF_UCHAR) {
       
  7587         prompt("Bit 18")
       
  7588         interest(1)
       
  7589         pp(TRUE)
       
  7590     }
       
  7591     field(B13, DBF_UCHAR) {
       
  7592         prompt("Bit 19")
       
  7593         interest(1)
       
  7594         pp(TRUE)
       
  7595     }
       
  7596     field(B14, DBF_UCHAR) {
       
  7597         interest(1)
       
  7598         prompt("Bit 20")
       
  7599         pp(TRUE)
       
  7600     }
       
  7601     field(B15, DBF_UCHAR) {
       
  7602         prompt("Bit 21")
       
  7603         interest(1)
       
  7604         pp(TRUE)
       
  7605     }
       
  7606     field(B16, DBF_UCHAR) {
       
  7607         interest(1)
       
  7608         prompt("Bit 22")
       
  7609         pp(TRUE)
       
  7610     }
       
  7611     field(B17, DBF_UCHAR) {
       
  7612         pp(TRUE)
       
  7613         interest(1)
       
  7614         prompt("Bit 23")
       
  7615     }
       
  7616     field(B18, DBF_UCHAR) {
       
  7617         pp(TRUE)
       
  7618         interest(1)
       
  7619         prompt("Bit 24")
       
  7620     }
       
  7621     field(B19, DBF_UCHAR) {
       
  7622         pp(TRUE)
       
  7623         interest(1)
       
  7624         prompt("Bit 25")
       
  7625     }
       
  7626     field(B1A, DBF_UCHAR) {
       
  7627         prompt("Bit 26")
       
  7628         interest(1)
       
  7629         pp(TRUE)
       
  7630     }
       
  7631     field(B1B, DBF_UCHAR) {
       
  7632         pp(TRUE)
       
  7633         interest(1)
       
  7634         prompt("Bit 27")
       
  7635     }
       
  7636     field(B1C, DBF_UCHAR) {
       
  7637         pp(TRUE)
       
  7638         prompt("Bit 28")
       
  7639         interest(1)
       
  7640     }
       
  7641     field(B1D, DBF_UCHAR) {
       
  7642         pp(TRUE)
       
  7643         prompt("Bit 29")
       
  7644         interest(1)
       
  7645     }
       
  7646     field(B1E, DBF_UCHAR) {
       
  7647         pp(TRUE)
       
  7648         prompt("Bit 30")
       
  7649         interest(1)
       
  7650     }
       
  7651     field(B1F, DBF_UCHAR) {
       
  7652         pp(TRUE)
       
  7653         interest(1)
       
  7654         prompt("Bit 31")
       
  7655     }
  4488     }
  7656 }
  4489 }
  7657 device(mbbiDirect, CONSTANT, devMbbiDirectSoft, "Soft Channel")
  4490 device(subArray, CONSTANT, devSASoft, "Soft Channel")
  7658 device(mbbiDirect, CONSTANT, devMbbiDirectSoftRaw, "Raw Soft Channel")
       
  7659 device(mbbiDirect, CONSTANT, devMbbiDirectSoftCallback, "Async Soft Channel")
       
  7660 device(mbbiDirect, INST_IO, asynMbbiDirectUInt32Digital, "asynUInt32Digital")
       
  7661 device(mbbiDirect, INST_IO, devmbbiDirectStream, "stream")
       
  7662 recordtype(event) {
  4491 recordtype(event) {
  7663     %#include "epicsTypes.h"
  4492     %#include "epicsTypes.h"
  7664     %#include "link.h"
  4493     %#include "link.h"
  7665     %#include "epicsMutex.h"
  4494     %#include "epicsMutex.h"
  7666     %#include "ellLib.h"
  4495     %#include "ellLib.h"
  7667     %#include "epicsTime.h"
  4496     %#include "epicsTime.h"
  7668     %#include "dbScan.h"
  4497     %#include "dbScan.h"
  7669     %#include "callback.h"
  4498     %#include "callback.h"
  7670     field(NAME, DBF_STRING) {
  4499     field(NAME, DBF_STRING) {
       
  4500         special(SPC_NOMOD)
       
  4501         size(61)
  7671         prompt("Record Name")
  4502         prompt("Record Name")
  7672         special(SPC_NOMOD)
       
  7673         size(61)
       
  7674     }
  4503     }
  7675     field(DESC, DBF_STRING) {
  4504     field(DESC, DBF_STRING) {
  7676         promptgroup("10 - Common")
  4505         promptgroup("10 - Common")
       
  4506         size(41)
  7677         prompt("Descriptor")
  4507         prompt("Descriptor")
  7678         size(41)
       
  7679     }
  4508     }
  7680     field(ASG, DBF_STRING) {
  4509     field(ASG, DBF_STRING) {
  7681         promptgroup("10 - Common")
  4510         promptgroup("10 - Common")
  7682         special(SPC_AS)
  4511         special(SPC_AS)
  7683         prompt("Access Security Group")
  4512         prompt("Access Security Group")
  7684         size(29)
  4513         size(29)
  7685     }
  4514     }
  7686     field(SCAN, DBF_MENU) {
  4515     field(SCAN, DBF_MENU) {
  7687         prompt("Scan Mechanism")
  4516         prompt("Scan Mechanism")
       
  4517         menu(menuScan)
       
  4518         interest(1)
  7688         special(SPC_SCAN)
  4519         special(SPC_SCAN)
  7689         interest(1)
  4520         promptgroup("20 - Scan")
  7690         promptgroup("20 - Scan")
       
  7691         menu(menuScan)
       
  7692     }
  4521     }
  7693     field(PINI, DBF_MENU) {
  4522     field(PINI, DBF_MENU) {
       
  4523         promptgroup("20 - Scan")
  7694         menu(menuPini)
  4524         menu(menuPini)
  7695         promptgroup("20 - Scan")
       
  7696         interest(1)
  4525         interest(1)
  7697         prompt("Process at iocInit")
  4526         prompt("Process at iocInit")
  7698     }
  4527     }
  7699     field(PHAS, DBF_SHORT) {
  4528     field(PHAS, DBF_SHORT) {
  7700         promptgroup("20 - Scan")
  4529         prompt("Scan Phase")
  7701         interest(1)
  4530         interest(1)
  7702         special(SPC_SCAN)
  4531         special(SPC_SCAN)
  7703         prompt("Scan Phase")
  4532         promptgroup("20 - Scan")
  7704     }
  4533     }
  7705     field(EVNT, DBF_STRING) {
  4534     field(EVNT, DBF_STRING) {
       
  4535         prompt("Event Name")
  7706         size(40)
  4536         size(40)
  7707         prompt("Event Name")
  4537         promptgroup("20 - Scan")
  7708         interest(1)
  4538         interest(1)
  7709         special(SPC_SCAN)
  4539         special(SPC_SCAN)
  7710         promptgroup("20 - Scan")
       
  7711     }
  4540     }
  7712     field(TSE, DBF_SHORT) {
  4541     field(TSE, DBF_SHORT) {
  7713         interest(1)
  4542         promptgroup("20 - Scan")
  7714         promptgroup("20 - Scan")
  4543         interest(1)
  7715         prompt("Time Stamp Event")
  4544         prompt("Time Stamp Event")
  7716     }
  4545     }
  7717     field(TSEL, DBF_INLINK) {
  4546     field(TSEL, DBF_INLINK) {
  7718         prompt("Time Stamp Link")
  4547         prompt("Time Stamp Link")
  7719         interest(1)
  4548         interest(1)
  7723         promptgroup("10 - Common")
  4552         promptgroup("10 - Common")
  7724         interest(1)
  4553         interest(1)
  7725         prompt("Device Type")
  4554         prompt("Device Type")
  7726     }
  4555     }
  7727     field(DISV, DBF_SHORT) {
  4556     field(DISV, DBF_SHORT) {
  7728         promptgroup("20 - Scan")
  4557         initial("1")
  7729         prompt("Disable Value")
  4558         prompt("Disable Value")
  7730         initial("1")
  4559         promptgroup("20 - Scan")
  7731     }
  4560     }
  7732     field(DISA, DBF_SHORT) {
  4561     field(DISA, DBF_SHORT) {
  7733         prompt("Disable")
  4562         prompt("Disable")
  7734     }
  4563     }
  7735     field(SDIS, DBF_INLINK) {
  4564     field(SDIS, DBF_INLINK) {
  7736         prompt("Scanning Disable")
  4565         prompt("Scanning Disable")
  7737         interest(1)
  4566         promptgroup("20 - Scan")
  7738         promptgroup("20 - Scan")
  4567         interest(1)
  7739     }
  4568     }
  7740     field(MLOK, DBF_NOACCESS) {
  4569     field(MLOK, DBF_NOACCESS) {
       
  4570         extra("epicsMutexId        mlok")
  7741         prompt("Monitor lock")
  4571         prompt("Monitor lock")
  7742         interest(4)
  4572         interest(4)
  7743         special(SPC_NOMOD)
  4573         special(SPC_NOMOD)
  7744         extra("epicsMutexId        mlok")
       
  7745     }
  4574     }
  7746     field(MLIS, DBF_NOACCESS) {
  4575     field(MLIS, DBF_NOACCESS) {
       
  4576         prompt("Monitor List")
  7747         extra("ELLLIST             mlis")
  4577         extra("ELLLIST             mlis")
  7748         special(SPC_NOMOD)
  4578         special(SPC_NOMOD)
  7749         interest(4)
  4579         interest(4)
  7750         prompt("Monitor List")
       
  7751     }
  4580     }
  7752     field(BKLNK, DBF_NOACCESS) {
  4581     field(BKLNK, DBF_NOACCESS) {
  7753         extra("ELLLIST             bklnk")
  4582         extra("ELLLIST             bklnk")
  7754         interest(4)
       
  7755         special(SPC_NOMOD)
       
  7756         prompt("Backwards link tracking")
  4583         prompt("Backwards link tracking")
       
  4584         interest(4)
       
  4585         special(SPC_NOMOD)
  7757     }
  4586     }
  7758     field(DISP, DBF_UCHAR) {
  4587     field(DISP, DBF_UCHAR) {
  7759         prompt("Disable putField")
  4588         prompt("Disable putField")
  7760     }
  4589     }
  7761     field(PROC, DBF_UCHAR) {
  4590     field(PROC, DBF_UCHAR) {
  7762         interest(3)
       
  7763         prompt("Force Processing")
  4591         prompt("Force Processing")
  7764         pp(TRUE)
  4592         pp(TRUE)
       
  4593         interest(3)
  7765     }
  4594     }
  7766     field(STAT, DBF_MENU) {
  4595     field(STAT, DBF_MENU) {
       
  4596         special(SPC_NOMOD)
       
  4597         menu(menuAlarmStat)
  7767         initial("UDF")
  4598         initial("UDF")
  7768         special(SPC_NOMOD)
       
  7769         prompt("Alarm Status")
  4599         prompt("Alarm Status")
  7770         menu(menuAlarmStat)
       
  7771     }
  4600     }
  7772     field(SEVR, DBF_MENU) {
  4601     field(SEVR, DBF_MENU) {
       
  4602         menu(menuAlarmSevr)
  7773         special(SPC_NOMOD)
  4603         special(SPC_NOMOD)
  7774         prompt("Alarm Severity")
  4604         prompt("Alarm Severity")
  7775         menu(menuAlarmSevr)
       
  7776     }
  4605     }
  7777     field(NSTA, DBF_MENU) {
  4606     field(NSTA, DBF_MENU) {
  7778         prompt("New Alarm Status")
  4607         prompt("New Alarm Status")
  7779         special(SPC_NOMOD)
       
  7780         interest(2)
       
  7781         menu(menuAlarmStat)
  4608         menu(menuAlarmStat)
       
  4609         interest(2)
       
  4610         special(SPC_NOMOD)
  7782     }
  4611     }
  7783     field(NSEV, DBF_MENU) {
  4612     field(NSEV, DBF_MENU) {
  7784         menu(menuAlarmSevr)
       
  7785         interest(2)
       
  7786         special(SPC_NOMOD)
       
  7787         prompt("New Alarm Severity")
  4613         prompt("New Alarm Severity")
       
  4614         special(SPC_NOMOD)
       
  4615         interest(2)
       
  4616         menu(menuAlarmSevr)
  7788     }
  4617     }
  7789     field(ACKS, DBF_MENU) {
  4618     field(ACKS, DBF_MENU) {
  7790         menu(menuAlarmSevr)
  4619         interest(2)
       
  4620         menu(menuAlarmSevr)
       
  4621         special(SPC_NOMOD)
  7791         prompt("Alarm Ack Severity")
  4622         prompt("Alarm Ack Severity")
  7792         special(SPC_NOMOD)
       
  7793         interest(2)
       
  7794     }
  4623     }
  7795     field(ACKT, DBF_MENU) {
  4624     field(ACKT, DBF_MENU) {
       
  4625         promptgroup("70 - Alarm")
       
  4626         interest(2)
       
  4627         menu(menuYesNo)
       
  4628         special(SPC_NOMOD)
       
  4629         prompt("Alarm Ack Transient")
  7796         initial("YES")
  4630         initial("YES")
  7797         menu(menuYesNo)
       
  7798         interest(2)
       
  7799         promptgroup("70 - Alarm")
       
  7800         special(SPC_NOMOD)
       
  7801         prompt("Alarm Ack Transient")
       
  7802     }
  4631     }
  7803     field(DISS, DBF_MENU) {
  4632     field(DISS, DBF_MENU) {
  7804         promptgroup("70 - Alarm")
       
  7805         interest(1)
       
  7806         prompt("Disable Alarm Sevrty")
  4633         prompt("Disable Alarm Sevrty")
  7807         menu(menuAlarmSevr)
  4634         promptgroup("70 - Alarm")
       
  4635         menu(menuAlarmSevr)
       
  4636         interest(1)
  7808     }
  4637     }
  7809     field(LCNT, DBF_UCHAR) {
  4638     field(LCNT, DBF_UCHAR) {
  7810         interest(2)
  4639         special(SPC_NOMOD)
  7811         special(SPC_NOMOD)
  4640         interest(2)
  7812         prompt("Lock Count")
  4641         prompt("Lock Count")
  7813     }
  4642     }
  7814     field(PACT, DBF_UCHAR) {
  4643     field(PACT, DBF_UCHAR) {
  7815         prompt("Record active")
  4644         prompt("Record active")
  7816         special(SPC_NOMOD)
  4645         interest(1)
  7817         interest(1)
  4646         special(SPC_NOMOD)
  7818     }
  4647     }
  7819     field(PUTF, DBF_UCHAR) {
  4648     field(PUTF, DBF_UCHAR) {
  7820         prompt("dbPutField process")
  4649         prompt("dbPutField process")
  7821         special(SPC_NOMOD)
  4650         interest(1)
  7822         interest(1)
  4651         special(SPC_NOMOD)
  7823     }
  4652     }
  7824     field(RPRO, DBF_UCHAR) {
  4653     field(RPRO, DBF_UCHAR) {
  7825         prompt("Reprocess ")
  4654         prompt("Reprocess ")
  7826         interest(1)
  4655         interest(1)
  7827         special(SPC_NOMOD)
  4656         special(SPC_NOMOD)
  7828     }
  4657     }
  7829     field(ASP, DBF_NOACCESS) {
  4658     field(ASP, DBF_NOACCESS) {
  7830         prompt("Access Security Pvt")
  4659         prompt("Access Security Pvt")
  7831         interest(4)
       
  7832         special(SPC_NOMOD)
       
  7833         extra("struct asgMember    *asp")
  4660         extra("struct asgMember    *asp")
       
  4661         special(SPC_NOMOD)
       
  4662         interest(4)
  7834     }
  4663     }
  7835     field(PPN, DBF_NOACCESS) {
  4664     field(PPN, DBF_NOACCESS) {
  7836         special(SPC_NOMOD)
       
  7837         interest(4)
       
  7838         prompt("pprocessNotify")
  4665         prompt("pprocessNotify")
  7839         extra("struct processNotify *ppn")
  4666         extra("struct processNotify *ppn")
       
  4667         special(SPC_NOMOD)
       
  4668         interest(4)
  7840     }
  4669     }
  7841     field(PPNR, DBF_NOACCESS) {
  4670     field(PPNR, DBF_NOACCESS) {
  7842         special(SPC_NOMOD)
  4671         interest(4)
  7843         interest(4)
  4672         special(SPC_NOMOD)
  7844         prompt("pprocessNotifyRecord")
  4673         prompt("pprocessNotifyRecord")
  7845         extra("struct processNotifyRecord *ppnr")
  4674         extra("struct processNotifyRecord *ppnr")
  7846     }
  4675     }
  7847     field(SPVT, DBF_NOACCESS) {
  4676     field(SPVT, DBF_NOACCESS) {
  7848         special(SPC_NOMOD)
  4677         extra("struct scan_element *spvt")
  7849         interest(4)
       
  7850         prompt("Scan Private")
  4678         prompt("Scan Private")
  7851         extra("struct scan_element *spvt")
  4679         interest(4)
       
  4680         special(SPC_NOMOD)
  7852     }
  4681     }
  7853     field(RSET, DBF_NOACCESS) {
  4682     field(RSET, DBF_NOACCESS) {
  7854         special(SPC_NOMOD)
       
  7855         interest(4)
       
  7856         prompt("Address of RSET")
  4683         prompt("Address of RSET")
  7857         extra("struct typed_rset   *rset")
  4684         extra("struct typed_rset   *rset")
       
  4685         special(SPC_NOMOD)
       
  4686         interest(4)
  7858     }
  4687     }
  7859     field(DSET, DBF_NOACCESS) {
  4688     field(DSET, DBF_NOACCESS) {
  7860         special(SPC_NOMOD)
  4689         extra("struct dset         *dset")
  7861         interest(4)
       
  7862         prompt("DSET address")
  4690         prompt("DSET address")
  7863         extra("struct dset         *dset")
  4691         special(SPC_NOMOD)
       
  4692         interest(4)
  7864     }
  4693     }
  7865     field(DPVT, DBF_NOACCESS) {
  4694     field(DPVT, DBF_NOACCESS) {
       
  4695         special(SPC_NOMOD)
       
  4696         interest(4)
  7866         extra("void                *dpvt")
  4697         extra("void                *dpvt")
  7867         prompt("Device Private")
  4698         prompt("Device Private")
  7868         special(SPC_NOMOD)
       
  7869         interest(4)
       
  7870     }
  4699     }
  7871     field(RDES, DBF_NOACCESS) {
  4700     field(RDES, DBF_NOACCESS) {
  7872         special(SPC_NOMOD)
       
  7873         interest(4)
       
  7874         prompt("Address of dbRecordType")
  4701         prompt("Address of dbRecordType")
  7875         extra("struct dbRecordType *rdes")
  4702         extra("struct dbRecordType *rdes")
       
  4703         interest(4)
       
  4704         special(SPC_NOMOD)
  7876     }
  4705     }
  7877     field(LSET, DBF_NOACCESS) {
  4706     field(LSET, DBF_NOACCESS) {
  7878         interest(4)
  4707         extra("struct lockRecord   *lset")
  7879         special(SPC_NOMOD)
       
  7880         prompt("Lock Set")
  4708         prompt("Lock Set")
  7881         extra("struct lockRecord   *lset")
  4709         interest(4)
       
  4710         special(SPC_NOMOD)
  7882     }
  4711     }
  7883     field(PRIO, DBF_MENU) {
  4712     field(PRIO, DBF_MENU) {
       
  4713         special(SPC_SCAN)
       
  4714         interest(1)
  7884         menu(menuPriority)
  4715         menu(menuPriority)
       
  4716         promptgroup("20 - Scan")
  7885         prompt("Scheduling Priority")
  4717         prompt("Scheduling Priority")
  7886         interest(1)
       
  7887         promptgroup("20 - Scan")
       
  7888         special(SPC_SCAN)
       
  7889     }
  4718     }
  7890     field(TPRO, DBF_UCHAR) {
  4719     field(TPRO, DBF_UCHAR) {
  7891         prompt("Trace Processing")
  4720         prompt("Trace Processing")
  7892     }
  4721     }
  7893     field(BKPT, DBF_NOACCESS) {
  4722     field(BKPT, DBF_NOACCESS) {
  7894         extra("char                bkpt")
  4723         extra("char                bkpt")
  7895         special(SPC_NOMOD)
       
  7896         interest(1)
       
  7897         prompt("Break Point")
  4724         prompt("Break Point")
       
  4725         interest(1)
       
  4726         special(SPC_NOMOD)
  7898     }
  4727     }
  7899     field(UDF, DBF_UCHAR) {
  4728     field(UDF, DBF_UCHAR) {
  7900         pp(TRUE)
  4729         promptgroup("10 - Common")
  7901         initial("1")
  4730         pp(TRUE)
       
  4731         interest(1)
  7902         prompt("Undefined")
  4732         prompt("Undefined")
  7903         promptgroup("10 - Common")
  4733         initial("1")
  7904         interest(1)
       
  7905     }
  4734     }
  7906     field(UDFS, DBF_MENU) {
  4735     field(UDFS, DBF_MENU) {
  7907         promptgroup("70 - Alarm")
  4736         initial("INVALID")
  7908         interest(1)
       
  7909         prompt("Undefined Alarm Sevrty")
  4737         prompt("Undefined Alarm Sevrty")
  7910         menu(menuAlarmSevr)
  4738         interest(1)
  7911         initial("INVALID")
  4739         menu(menuAlarmSevr)
       
  4740         promptgroup("70 - Alarm")
  7912     }
  4741     }
  7913     field(TIME, DBF_NOACCESS) {
  4742     field(TIME, DBF_NOACCESS) {
       
  4743         special(SPC_NOMOD)
       
  4744         interest(2)
       
  4745         extra("epicsTimeStamp      time")
  7914         prompt("Time")
  4746         prompt("Time")
  7915         special(SPC_NOMOD)
       
  7916         interest(2)
       
  7917         extra("epicsTimeStamp      time")
       
  7918     }
  4747     }
  7919     field(FLNK, DBF_FWDLINK) {
  4748     field(FLNK, DBF_FWDLINK) {
  7920         prompt("Forward Process Link")
  4749         prompt("Forward Process Link")
  7921         promptgroup("20 - Scan")
  4750         interest(1)
  7922         interest(1)
  4751         promptgroup("20 - Scan")
  7923     }
  4752     }
  7924     field(VAL, DBF_STRING) {
  4753     field(VAL, DBF_STRING) {
       
  4754         promptgroup("40 - Input")
       
  4755         special(SPC_MOD)
       
  4756         prompt("Event Name To Post")
       
  4757         asl(ASL0)
  7925         size(40)
  4758         size(40)
  7926         asl(ASL0)
       
  7927         promptgroup("40 - Input")
       
  7928         special(SPC_MOD)
       
  7929         prompt("Event Name To Post")
       
  7930     }
  4759     }
  7931     field(EPVT, DBF_NOACCESS) {
  4760     field(EPVT, DBF_NOACCESS) {
  7932         special(SPC_NOMOD)
  4761         interest(4)
  7933         interest(4)
  4762         special(SPC_NOMOD)
  7934         prompt("Event private")
  4763         prompt("Event private")
  7935         extra("EVENTPVT epvt")
  4764         extra("EVENTPVT epvt")
  7936     }
  4765     }
  7937     field(INP, DBF_INLINK) {
  4766     field(INP, DBF_INLINK) {
       
  4767         prompt("Input Specification")
  7938         promptgroup("40 - Input")
  4768         promptgroup("40 - Input")
  7939         interest(1)
  4769         interest(1)
  7940         prompt("Input Specification")
       
  7941     }
  4770     }
  7942     field(SIOL, DBF_INLINK) {
  4771     field(SIOL, DBF_INLINK) {
       
  4772         prompt("Simulation Input Link")
       
  4773         interest(1)
  7943         promptgroup("90 - Simulate")
  4774         promptgroup("90 - Simulate")
  7944         interest(1)
       
  7945         prompt("Simulation Input Link")
       
  7946     }
  4775     }
  7947     field(SVAL, DBF_STRING) {
  4776     field(SVAL, DBF_STRING) {
       
  4777         prompt("Simulation Value")
  7948         size(40)
  4778         size(40)
  7949         prompt("Simulation Value")
       
  7950     }
  4779     }
  7951     field(SIML, DBF_INLINK) {
  4780     field(SIML, DBF_INLINK) {
       
  4781         prompt("Simulation Mode Link")
       
  4782         interest(1)
  7952         promptgroup("90 - Simulate")
  4783         promptgroup("90 - Simulate")
  7953         interest(1)
       
  7954         prompt("Simulation Mode Link")
       
  7955     }
  4784     }
  7956     field(SIMM, DBF_MENU) {
  4785     field(SIMM, DBF_MENU) {
  7957         special(SPC_MOD)
       
  7958         interest(1)
       
  7959         prompt("Simulation Mode")
  4786         prompt("Simulation Mode")
       
  4787         special(SPC_MOD)
       
  4788         interest(1)
  7960         menu(menuYesNo)
  4789         menu(menuYesNo)
  7961     }
  4790     }
  7962     field(SIMS, DBF_MENU) {
  4791     field(SIMS, DBF_MENU) {
       
  4792         prompt("Simulation Mode Severity")
  7963         promptgroup("90 - Simulate")
  4793         promptgroup("90 - Simulate")
  7964         interest(2)
  4794         interest(2)
  7965         prompt("Simulation Mode Severity")
       
  7966         menu(menuAlarmSevr)
  4795         menu(menuAlarmSevr)
  7967     }
  4796     }
  7968     field(OLDSIMM, DBF_MENU) {
  4797     field(OLDSIMM, DBF_MENU) {
  7969         prompt("Prev. Simulation Mode")
  4798         prompt("Prev. Simulation Mode")
  7970         special(SPC_NOMOD)
  4799         special(SPC_NOMOD)
  7971         interest(4)
  4800         interest(4)
  7972         menu(menuSimm)
  4801         menu(menuSimm)
  7973     }
  4802     }
  7974     field(SSCN, DBF_MENU) {
  4803     field(SSCN, DBF_MENU) {
       
  4804         initial("65535")
       
  4805         prompt("Sim. Mode Scan")
       
  4806         interest(1)
       
  4807         menu(menuScan)
  7975         promptgroup("90 - Simulate")
  4808         promptgroup("90 - Simulate")
  7976         interest(1)
       
  7977         prompt("Sim. Mode Scan")
       
  7978         menu(menuScan)
       
  7979         initial("65535")
       
  7980     }
  4809     }
  7981     field(SDLY, DBF_DOUBLE) {
  4810     field(SDLY, DBF_DOUBLE) {
  7982         interest(2)
       
  7983         promptgroup("90 - Simulate")
       
  7984         prompt("Sim. Mode Async Delay")
  4811         prompt("Sim. Mode Async Delay")
  7985         initial("-1.0")
  4812         initial("-1.0")
       
  4813         promptgroup("90 - Simulate")
       
  4814         interest(2)
  7986     }
  4815     }
  7987     field(SIMPVT, DBF_NOACCESS) {
  4816     field(SIMPVT, DBF_NOACCESS) {
       
  4817         prompt("Sim. Mode Private")
  7988         extra("CALLBACK            *simpvt")
  4818         extra("CALLBACK            *simpvt")
  7989         prompt("Sim. Mode Private")
  4819         special(SPC_NOMOD)
  7990         interest(4)
  4820         interest(4)
  7991         special(SPC_NOMOD)
       
  7992     }
  4821     }
  7993 }
  4822 }
  7994 device(event, CONSTANT, devEventSoft, "Soft Channel")
  4823 device(event, CONSTANT, devEventSoft, "Soft Channel")
  7995 recordtype(subArray) {
  4824 recordtype(state) {
  7996     %#include "epicsTypes.h"
  4825     %#include "epicsTypes.h"
  7997     %#include "link.h"
  4826     %#include "link.h"
  7998     %#include "epicsMutex.h"
  4827     %#include "epicsMutex.h"
  7999     %#include "ellLib.h"
  4828     %#include "ellLib.h"
  8000     %#include "epicsTime.h"
  4829     %#include "epicsTime.h"
  8001     field(NAME, DBF_STRING) {
  4830     field(NAME, DBF_STRING) {
       
  4831         special(SPC_NOMOD)
       
  4832         size(61)
  8002         prompt("Record Name")
  4833         prompt("Record Name")
  8003         special(SPC_NOMOD)
       
  8004         size(61)
       
  8005     }
  4834     }
  8006     field(DESC, DBF_STRING) {
  4835     field(DESC, DBF_STRING) {
  8007         size(41)
  4836         size(41)
  8008         prompt("Descriptor")
  4837         prompt("Descriptor")
  8009         promptgroup("10 - Common")
  4838         promptgroup("10 - Common")
  8010     }
  4839     }
  8011     field(ASG, DBF_STRING) {
  4840     field(ASG, DBF_STRING) {
  8012         special(SPC_AS)
  4841         special(SPC_AS)
  8013         promptgroup("10 - Common")
  4842         promptgroup("10 - Common")
       
  4843         size(29)
  8014         prompt("Access Security Group")
  4844         prompt("Access Security Group")
  8015         size(29)
       
  8016     }
  4845     }
  8017     field(SCAN, DBF_MENU) {
  4846     field(SCAN, DBF_MENU) {
       
  4847         promptgroup("20 - Scan")
       
  4848         interest(1)
  8018         menu(menuScan)
  4849         menu(menuScan)
       
  4850         special(SPC_SCAN)
  8019         prompt("Scan Mechanism")
  4851         prompt("Scan Mechanism")
       
  4852     }
       
  4853     field(PINI, DBF_MENU) {
       
  4854         interest(1)
       
  4855         menu(menuPini)
       
  4856         promptgroup("20 - Scan")
       
  4857         prompt("Process at iocInit")
       
  4858     }
       
  4859     field(PHAS, DBF_SHORT) {
       
  4860         prompt("Scan Phase")
  8020         promptgroup("20 - Scan")
  4861         promptgroup("20 - Scan")
  8021         interest(1)
  4862         interest(1)
  8022         special(SPC_SCAN)
  4863         special(SPC_SCAN)
  8023     }
  4864     }
  8024     field(PINI, DBF_MENU) {
  4865     field(EVNT, DBF_STRING) {
  8025         menu(menuPini)
  4866         prompt("Event Name")
  8026         prompt("Process at iocInit")
  4867         size(40)
  8027         promptgroup("20 - Scan")
  4868         promptgroup("20 - Scan")
  8028         interest(1)
       
  8029     }
       
  8030     field(PHAS, DBF_SHORT) {
       
  8031         interest(1)
  4869         interest(1)
  8032         special(SPC_SCAN)
  4870         special(SPC_SCAN)
  8033         promptgroup("20 - Scan")
       
  8034         prompt("Scan Phase")
       
  8035     }
       
  8036     field(EVNT, DBF_STRING) {
       
  8037         size(40)
       
  8038         prompt("Event Name")
       
  8039         interest(1)
       
  8040         special(SPC_SCAN)
       
  8041         promptgroup("20 - Scan")
       
  8042     }
  4871     }
  8043     field(TSE, DBF_SHORT) {
  4872     field(TSE, DBF_SHORT) {
       
  4873         interest(1)
       
  4874         promptgroup("20 - Scan")
  8044         prompt("Time Stamp Event")
  4875         prompt("Time Stamp Event")
  8045         interest(1)
       
  8046         promptgroup("20 - Scan")
       
  8047     }
  4876     }
  8048     field(TSEL, DBF_INLINK) {
  4877     field(TSEL, DBF_INLINK) {
  8049         prompt("Time Stamp Link")
  4878         prompt("Time Stamp Link")
  8050         interest(1)
  4879         interest(1)
  8051         promptgroup("20 - Scan")
  4880         promptgroup("20 - Scan")
  8052     }
  4881     }
  8053     field(DTYP, DBF_DEVICE) {
  4882     field(DTYP, DBF_DEVICE) {
       
  4883         interest(1)
       
  4884         promptgroup("10 - Common")
  8054         prompt("Device Type")
  4885         prompt("Device Type")
  8055         promptgroup("10 - Common")
       
  8056         interest(1)
       
  8057     }
  4886     }
  8058     field(DISV, DBF_SHORT) {
  4887     field(DISV, DBF_SHORT) {
       
  4888         promptgroup("20 - Scan")
  8059         prompt("Disable Value")
  4889         prompt("Disable Value")
  8060         promptgroup("20 - Scan")
       
  8061         initial("1")
  4890         initial("1")
  8062     }
  4891     }
  8063     field(DISA, DBF_SHORT) {
  4892     field(DISA, DBF_SHORT) {
  8064         prompt("Disable")
  4893         prompt("Disable")
  8065     }
  4894     }
  8066     field(SDIS, DBF_INLINK) {
  4895     field(SDIS, DBF_INLINK) {
  8067         interest(1)
       
  8068         promptgroup("20 - Scan")
       
  8069         prompt("Scanning Disable")
  4896         prompt("Scanning Disable")
       
  4897         promptgroup("20 - Scan")
       
  4898         interest(1)
  8070     }
  4899     }
  8071     field(MLOK, DBF_NOACCESS) {
  4900     field(MLOK, DBF_NOACCESS) {
       
  4901         special(SPC_NOMOD)
       
  4902         interest(4)
  8072         extra("epicsMutexId        mlok")
  4903         extra("epicsMutexId        mlok")
  8073         special(SPC_NOMOD)
       
  8074         interest(4)
       
  8075         prompt("Monitor lock")
  4904         prompt("Monitor lock")
  8076     }
  4905     }
  8077     field(MLIS, DBF_NOACCESS) {
  4906     field(MLIS, DBF_NOACCESS) {
  8078         prompt("Monitor List")
  4907         prompt("Monitor List")
  8079         special(SPC_NOMOD)
       
  8080         interest(4)
       
  8081         extra("ELLLIST             mlis")
  4908         extra("ELLLIST             mlis")
       
  4909         interest(4)
       
  4910         special(SPC_NOMOD)
  8082     }
  4911     }
  8083     field(BKLNK, DBF_NOACCESS) {
  4912     field(BKLNK, DBF_NOACCESS) {
  8084         interest(4)
  4913         interest(4)
  8085         special(SPC_NOMOD)
  4914         special(SPC_NOMOD)
       
  4915         extra("ELLLIST             bklnk")
  8086         prompt("Backwards link tracking")
  4916         prompt("Backwards link tracking")
  8087         extra("ELLLIST             bklnk")
       
  8088     }
  4917     }
  8089     field(DISP, DBF_UCHAR) {
  4918     field(DISP, DBF_UCHAR) {
  8090         prompt("Disable putField")
  4919         prompt("Disable putField")
  8091     }
  4920     }
  8092     field(PROC, DBF_UCHAR) {
  4921     field(PROC, DBF_UCHAR) {
  8093         pp(TRUE)
  4922         pp(TRUE)
  8094         interest(3)
  4923         interest(3)
  8095         prompt("Force Processing")
  4924         prompt("Force Processing")
  8096     }
  4925     }
  8097     field(STAT, DBF_MENU) {
  4926     field(STAT, DBF_MENU) {
       
  4927         prompt("Alarm Status")
       
  4928         initial("UDF")
  8098         menu(menuAlarmStat)
  4929         menu(menuAlarmStat)
  8099         prompt("Alarm Status")
  4930         special(SPC_NOMOD)
  8100         special(SPC_NOMOD)
       
  8101         initial("UDF")
       
  8102     }
  4931     }
  8103     field(SEVR, DBF_MENU) {
  4932     field(SEVR, DBF_MENU) {
  8104         menu(menuAlarmSevr)
       
  8105         prompt("Alarm Severity")
  4933         prompt("Alarm Severity")
  8106         special(SPC_NOMOD)
  4934         special(SPC_NOMOD)
       
  4935         menu(menuAlarmSevr)
  8107     }
  4936     }
  8108     field(NSTA, DBF_MENU) {
  4937     field(NSTA, DBF_MENU) {
  8109         menu(menuAlarmStat)
  4938         menu(menuAlarmStat)
       
  4939         interest(2)
       
  4940         special(SPC_NOMOD)
  8110         prompt("New Alarm Status")
  4941         prompt("New Alarm Status")
  8111         interest(2)
       
  8112         special(SPC_NOMOD)
       
  8113     }
  4942     }
  8114     field(NSEV, DBF_MENU) {
  4943     field(NSEV, DBF_MENU) {
  8115         menu(menuAlarmSevr)
       
  8116         special(SPC_NOMOD)
       
  8117         interest(2)
       
  8118         prompt("New Alarm Severity")
  4944         prompt("New Alarm Severity")
       
  4945         interest(2)
       
  4946         menu(menuAlarmSevr)
       
  4947         special(SPC_NOMOD)
  8119     }
  4948     }
  8120     field(ACKS, DBF_MENU) {
  4949     field(ACKS, DBF_MENU) {
  8121         menu(menuAlarmSevr)
       
  8122         interest(2)
       
  8123         special(SPC_NOMOD)
       
  8124         prompt("Alarm Ack Severity")
  4950         prompt("Alarm Ack Severity")
       
  4951         interest(2)
       
  4952         menu(menuAlarmSevr)
       
  4953         special(SPC_NOMOD)
  8125     }
  4954     }
  8126     field(ACKT, DBF_MENU) {
  4955     field(ACKT, DBF_MENU) {
       
  4956         interest(2)
  8127         menu(menuYesNo)
  4957         menu(menuYesNo)
  8128         interest(2)
  4958         special(SPC_NOMOD)
  8129         promptgroup("70 - Alarm")
  4959         promptgroup("70 - Alarm")
  8130         special(SPC_NOMOD)
  4960         initial("YES")
  8131         prompt("Alarm Ack Transient")
  4961         prompt("Alarm Ack Transient")
  8132         initial("YES")
       
  8133     }
  4962     }
  8134     field(DISS, DBF_MENU) {
  4963     field(DISS, DBF_MENU) {
  8135         menu(menuAlarmSevr)
       
  8136         prompt("Disable Alarm Sevrty")
  4964         prompt("Disable Alarm Sevrty")
  8137         promptgroup("70 - Alarm")
  4965         menu(menuAlarmSevr)
  8138         interest(1)
  4966         interest(1)
       
  4967         promptgroup("70 - Alarm")
  8139     }
  4968     }
  8140     field(LCNT, DBF_UCHAR) {
  4969     field(LCNT, DBF_UCHAR) {
  8141         special(SPC_NOMOD)
  4970         special(SPC_NOMOD)
  8142         interest(2)
  4971         interest(2)
  8143         prompt("Lock Count")
  4972         prompt("Lock Count")
  8144     }
  4973     }
  8145     field(PACT, DBF_UCHAR) {
  4974     field(PACT, DBF_UCHAR) {
  8146         interest(1)
       
  8147         special(SPC_NOMOD)
       
  8148         prompt("Record active")
  4975         prompt("Record active")
       
  4976         special(SPC_NOMOD)
       
  4977         interest(1)
  8149     }
  4978     }
  8150     field(PUTF, DBF_UCHAR) {
  4979     field(PUTF, DBF_UCHAR) {
  8151         interest(1)
  4980         interest(1)
  8152         special(SPC_NOMOD)
  4981         special(SPC_NOMOD)
  8153         prompt("dbPutField process")
  4982         prompt("dbPutField process")
  8156         prompt("Reprocess ")
  4985         prompt("Reprocess ")
  8157         special(SPC_NOMOD)
  4986         special(SPC_NOMOD)
  8158         interest(1)
  4987         interest(1)
  8159     }
  4988     }
  8160     field(ASP, DBF_NOACCESS) {
  4989     field(ASP, DBF_NOACCESS) {
       
  4990         prompt("Access Security Pvt")
  8161         extra("struct asgMember    *asp")
  4991         extra("struct asgMember    *asp")
  8162         interest(4)
  4992         special(SPC_NOMOD)
  8163         special(SPC_NOMOD)
  4993         interest(4)
  8164         prompt("Access Security Pvt")
       
  8165     }
  4994     }
  8166     field(PPN, DBF_NOACCESS) {
  4995     field(PPN, DBF_NOACCESS) {
       
  4996         prompt("pprocessNotify")
  8167         extra("struct processNotify *ppn")
  4997         extra("struct processNotify *ppn")
  8168         special(SPC_NOMOD)
  4998         interest(4)
  8169         interest(4)
  4999         special(SPC_NOMOD)
  8170         prompt("pprocessNotify")
       
  8171     }
  5000     }
  8172     field(PPNR, DBF_NOACCESS) {
  5001     field(PPNR, DBF_NOACCESS) {
  8173         extra("struct processNotifyRecord *ppnr")
  5002         extra("struct processNotifyRecord *ppnr")
  8174         prompt("pprocessNotifyRecord")
  5003         prompt("pprocessNotifyRecord")
  8175         special(SPC_NOMOD)
  5004         interest(4)
  8176         interest(4)
  5005         special(SPC_NOMOD)
  8177     }
  5006     }
  8178     field(SPVT, DBF_NOACCESS) {
  5007     field(SPVT, DBF_NOACCESS) {
       
  5008         prompt("Scan Private")
  8179         extra("struct scan_element *spvt")
  5009         extra("struct scan_element *spvt")
  8180         interest(4)
  5010         special(SPC_NOMOD)
  8181         special(SPC_NOMOD)
  5011         interest(4)
  8182         prompt("Scan Private")
       
  8183     }
  5012     }
  8184     field(RSET, DBF_NOACCESS) {
  5013     field(RSET, DBF_NOACCESS) {
       
  5014         interest(4)
       
  5015         special(SPC_NOMOD)
       
  5016         extra("struct typed_rset   *rset")
  8185         prompt("Address of RSET")
  5017         prompt("Address of RSET")
  8186         special(SPC_NOMOD)
       
  8187         interest(4)
       
  8188         extra("struct typed_rset   *rset")
       
  8189     }
  5018     }
  8190     field(DSET, DBF_NOACCESS) {
  5019     field(DSET, DBF_NOACCESS) {
  8191         interest(4)
  5020         interest(4)
  8192         special(SPC_NOMOD)
  5021         special(SPC_NOMOD)
  8193         prompt("DSET address")
  5022         prompt("DSET address")
  8194         extra("struct dset         *dset")
  5023         extra("struct dset         *dset")
  8195     }
  5024     }
  8196     field(DPVT, DBF_NOACCESS) {
  5025     field(DPVT, DBF_NOACCESS) {
  8197         special(SPC_NOMOD)
  5026         interest(4)
  8198         interest(4)
  5027         special(SPC_NOMOD)
  8199         prompt("Device Private")
  5028         prompt("Device Private")
  8200         extra("void                *dpvt")
  5029         extra("void                *dpvt")
  8201     }
  5030     }
  8202     field(RDES, DBF_NOACCESS) {
  5031     field(RDES, DBF_NOACCESS) {
  8203         special(SPC_NOMOD)
  5032         special(SPC_NOMOD)
  8204         interest(4)
  5033         interest(4)
       
  5034         extra("struct dbRecordType *rdes")
  8205         prompt("Address of dbRecordType")
  5035         prompt("Address of dbRecordType")
  8206         extra("struct dbRecordType *rdes")
       
  8207     }
  5036     }
  8208     field(LSET, DBF_NOACCESS) {
  5037     field(LSET, DBF_NOACCESS) {
  8209         prompt("Lock Set")
  5038         prompt("Lock Set")
  8210         interest(4)
       
  8211         special(SPC_NOMOD)
       
  8212         extra("struct lockRecord   *lset")
  5039         extra("struct lockRecord   *lset")
       
  5040         interest(4)
       
  5041         special(SPC_NOMOD)
  8213     }
  5042     }
  8214     field(PRIO, DBF_MENU) {
  5043     field(PRIO, DBF_MENU) {
       
  5044         prompt("Scheduling Priority")
       
  5045         promptgroup("20 - Scan")
       
  5046         special(SPC_SCAN)
       
  5047         interest(1)
  8215         menu(menuPriority)
  5048         menu(menuPriority)
  8216         interest(1)
       
  8217         promptgroup("20 - Scan")
       
  8218         special(SPC_SCAN)
       
  8219         prompt("Scheduling Priority")
       
  8220     }
  5049     }
  8221     field(TPRO, DBF_UCHAR) {
  5050     field(TPRO, DBF_UCHAR) {
  8222         prompt("Trace Processing")
  5051         prompt("Trace Processing")
  8223     }
  5052     }
  8224     field(BKPT, DBF_NOACCESS) {
  5053     field(BKPT, DBF_NOACCESS) {
       
  5054         interest(1)
       
  5055         special(SPC_NOMOD)
  8225         extra("char                bkpt")
  5056         extra("char                bkpt")
  8226         prompt("Break Point")
  5057         prompt("Break Point")
  8227         special(SPC_NOMOD)
       
  8228         interest(1)
       
  8229     }
  5058     }
  8230     field(UDF, DBF_UCHAR) {
  5059     field(UDF, DBF_UCHAR) {
  8231         pp(TRUE)
       
  8232         initial("1")
  5060         initial("1")
  8233         prompt("Undefined")
  5061         prompt("Undefined")
  8234         promptgroup("10 - Common")
  5062         interest(1)
  8235         interest(1)
  5063         pp(TRUE)
       
  5064         promptgroup("10 - Common")
  8236     }
  5065     }
  8237     field(UDFS, DBF_MENU) {
  5066     field(UDFS, DBF_MENU) {
       
  5067         promptgroup("70 - Alarm")
       
  5068         interest(1)
  8238         menu(menuAlarmSevr)
  5069         menu(menuAlarmSevr)
  8239         prompt("Undefined Alarm Sevrty")
  5070         prompt("Undefined Alarm Sevrty")
  8240         promptgroup("70 - Alarm")
       
  8241         interest(1)
       
  8242         initial("INVALID")
  5071         initial("INVALID")
  8243     }
  5072     }
  8244     field(TIME, DBF_NOACCESS) {
  5073     field(TIME, DBF_NOACCESS) {
       
  5074         interest(2)
       
  5075         special(SPC_NOMOD)
  8245         extra("epicsTimeStamp      time")
  5076         extra("epicsTimeStamp      time")
  8246         prompt("Time")
  5077         prompt("Time")
  8247         interest(2)
       
  8248         special(SPC_NOMOD)
       
  8249     }
  5078     }
  8250     field(FLNK, DBF_FWDLINK) {
  5079     field(FLNK, DBF_FWDLINK) {
  8251         interest(1)
       
  8252         promptgroup("20 - Scan")
       
  8253         prompt("Forward Process Link")
  5080         prompt("Forward Process Link")
  8254     }
  5081         interest(1)
  8255     field(VAL, DBF_NOACCESS) {
  5082         promptgroup("20 - Scan")
       
  5083     }
       
  5084     field(VAL, DBF_STRING) {
       
  5085         promptgroup("40 - Input")
       
  5086         pp(TRUE)
  8256         prompt("Value")
  5087         prompt("Value")
  8257         special(SPC_DBADDR)
  5088         size(20)
  8258         asl(ASL0)
  5089         asl(ASL0)
  8259         pp(TRUE)
  5090     }
  8260         extra("void *		val")
  5091     field(OVAL, DBF_STRING) {
  8261     }
  5092         special(SPC_NOMOD)
  8262     field(PREC, DBF_SHORT) {
  5093         interest(3)
  8263         prop(YES)
  5094         prompt("Prev Value")
  8264         interest(1)
  5095         size(20)
  8265         promptgroup("80 - Display")
       
  8266         prompt("Display Precision")
       
  8267     }
       
  8268     field(FTVL, DBF_MENU) {
       
  8269         promptgroup("30 - Action")
       
  8270         interest(1)
       
  8271         special(SPC_NOMOD)
       
  8272         prompt("Field Type of Value")
       
  8273         menu(menuFtype)
       
  8274     }
       
  8275     field(INP, DBF_INLINK) {
       
  8276         prompt("Input Specification")
       
  8277         promptgroup("40 - Input")
       
  8278         interest(1)
       
  8279     }
       
  8280     field(EGU, DBF_STRING) {
       
  8281         size(16)
       
  8282         prop(YES)
       
  8283         interest(1)
       
  8284         promptgroup("80 - Display")
       
  8285         prompt("Engineering Units")
       
  8286     }
       
  8287     field(HOPR, DBF_DOUBLE) {
       
  8288         prompt("High Operating Range")
       
  8289         interest(1)
       
  8290         prop(YES)
       
  8291         promptgroup("80 - Display")
       
  8292     }
       
  8293     field(LOPR, DBF_DOUBLE) {
       
  8294         prompt("Low Operating Range")
       
  8295         interest(1)
       
  8296         prop(YES)
       
  8297         promptgroup("80 - Display")
       
  8298     }
       
  8299     field(MALM, DBF_ULONG) {
       
  8300         promptgroup("30 - Action")
       
  8301         interest(1)
       
  8302         special(SPC_NOMOD)
       
  8303         prompt("Maximum Elements")
       
  8304         initial("1")
       
  8305     }
       
  8306     field(NELM, DBF_ULONG) {
       
  8307         promptgroup("30 - Action")
       
  8308         prompt("Number of Elements")
       
  8309         initial("1")
       
  8310         pp(TRUE)
       
  8311     }
       
  8312     field(INDX, DBF_ULONG) {
       
  8313         promptgroup("30 - Action")
       
  8314         prompt("Substring Index")
       
  8315         pp(TRUE)
       
  8316     }
       
  8317     field(BUSY, DBF_SHORT) {
       
  8318         special(SPC_NOMOD)
       
  8319         prompt("Busy Indicator")
       
  8320     }
       
  8321     field(NORD, DBF_LONG) {
       
  8322         special(SPC_NOMOD)
       
  8323         prompt("Number elements read")
       
  8324     }
       
  8325     field(BPTR, DBF_NOACCESS) {
       
  8326         interest(4)
       
  8327         special(SPC_NOMOD)
       
  8328         prompt("Buffer Pointer")
       
  8329         extra("void *		bptr")
       
  8330     }
  5096     }
  8331 }
  5097 }
  8332 device(subArray, CONSTANT, devSASoft, "Soft Channel")
  5098 recordtype(dfanout) {
  8333 recordtype(lsi) {
       
  8334     %#include "epicsTypes.h"
  5099     %#include "epicsTypes.h"
  8335     %#include "link.h"
  5100     %#include "link.h"
  8336     %#include "epicsMutex.h"
  5101     %#include "epicsMutex.h"
  8337     %#include "ellLib.h"
  5102     %#include "ellLib.h"
  8338     %#include "epicsTime.h"
  5103     %#include "epicsTime.h"
  8339     %#include "devSup.h"
       
  8340     %
       
  8341     %/* Declare Device Support Entry Table */
       
  8342     %typedef struct lsidset {
       
  8343     %    long number;
       
  8344     %    DEVSUPFUN report;
       
  8345     %    DEVSUPFUN init;
       
  8346     %    DEVSUPFUN init_record;
       
  8347     %    DEVSUPFUN get_ioint_info;
       
  8348     %    DEVSUPFUN read_string;
       
  8349     %} lsidset;
       
  8350     %
       
  8351     %#include "callback.h"
       
  8352     field(NAME, DBF_STRING) {
  5104     field(NAME, DBF_STRING) {
       
  5105         special(SPC_NOMOD)
  8353         prompt("Record Name")
  5106         prompt("Record Name")
  8354         special(SPC_NOMOD)
       
  8355         size(61)
  5107         size(61)
  8356     }
  5108     }
  8357     field(DESC, DBF_STRING) {
  5109     field(DESC, DBF_STRING) {
       
  5110         promptgroup("10 - Common")
  8358         size(41)
  5111         size(41)
  8359         promptgroup("10 - Common")
       
  8360         prompt("Descriptor")
  5112         prompt("Descriptor")
  8361     }
  5113     }
  8362     field(ASG, DBF_STRING) {
  5114     field(ASG, DBF_STRING) {
  8363         special(SPC_AS)
       
  8364         promptgroup("10 - Common")
       
  8365         prompt("Access Security Group")
  5115         prompt("Access Security Group")
  8366         size(29)
  5116         size(29)
       
  5117         promptgroup("10 - Common")
       
  5118         special(SPC_AS)
  8367     }
  5119     }
  8368     field(SCAN, DBF_MENU) {
  5120     field(SCAN, DBF_MENU) {
  8369         interest(1)
       
  8370         promptgroup("20 - Scan")
       
  8371         special(SPC_SCAN)
  5121         special(SPC_SCAN)
       
  5122         interest(1)
       
  5123         menu(menuScan)
       
  5124         promptgroup("20 - Scan")
  8372         prompt("Scan Mechanism")
  5125         prompt("Scan Mechanism")
       
  5126     }
       
  5127     field(PINI, DBF_MENU) {
       
  5128         prompt("Process at iocInit")
       
  5129         promptgroup("20 - Scan")
       
  5130         menu(menuPini)
       
  5131         interest(1)
       
  5132     }
       
  5133     field(PHAS, DBF_SHORT) {
       
  5134         promptgroup("20 - Scan")
       
  5135         special(SPC_SCAN)
       
  5136         interest(1)
       
  5137         prompt("Scan Phase")
       
  5138     }
       
  5139     field(EVNT, DBF_STRING) {
       
  5140         special(SPC_SCAN)
       
  5141         interest(1)
       
  5142         promptgroup("20 - Scan")
       
  5143         size(40)
       
  5144         prompt("Event Name")
       
  5145     }
       
  5146     field(TSE, DBF_SHORT) {
       
  5147         prompt("Time Stamp Event")
       
  5148         promptgroup("20 - Scan")
       
  5149         interest(1)
       
  5150     }
       
  5151     field(TSEL, DBF_INLINK) {
       
  5152         prompt("Time Stamp Link")
       
  5153         promptgroup("20 - Scan")
       
  5154         interest(1)
       
  5155     }
       
  5156     field(DTYP, DBF_DEVICE) {
       
  5157         promptgroup("10 - Common")
       
  5158         interest(1)
       
  5159         prompt("Device Type")
       
  5160     }
       
  5161     field(DISV, DBF_SHORT) {
       
  5162         prompt("Disable Value")
       
  5163         initial("1")
       
  5164         promptgroup("20 - Scan")
       
  5165     }
       
  5166     field(DISA, DBF_SHORT) {
       
  5167         prompt("Disable")
       
  5168     }
       
  5169     field(SDIS, DBF_INLINK) {
       
  5170         prompt("Scanning Disable")
       
  5171         promptgroup("20 - Scan")
       
  5172         interest(1)
       
  5173     }
       
  5174     field(MLOK, DBF_NOACCESS) {
       
  5175         special(SPC_NOMOD)
       
  5176         interest(4)
       
  5177         extra("epicsMutexId        mlok")
       
  5178         prompt("Monitor lock")
       
  5179     }
       
  5180     field(MLIS, DBF_NOACCESS) {
       
  5181         interest(4)
       
  5182         special(SPC_NOMOD)
       
  5183         extra("ELLLIST             mlis")
       
  5184         prompt("Monitor List")
       
  5185     }
       
  5186     field(BKLNK, DBF_NOACCESS) {
       
  5187         extra("ELLLIST             bklnk")
       
  5188         prompt("Backwards link tracking")
       
  5189         special(SPC_NOMOD)
       
  5190         interest(4)
       
  5191     }
       
  5192     field(DISP, DBF_UCHAR) {
       
  5193         prompt("Disable putField")
       
  5194     }
       
  5195     field(PROC, DBF_UCHAR) {
       
  5196         prompt("Force Processing")
       
  5197         interest(3)
       
  5198         pp(TRUE)
       
  5199     }
       
  5200     field(STAT, DBF_MENU) {
       
  5201         initial("UDF")
       
  5202         prompt("Alarm Status")
       
  5203         menu(menuAlarmStat)
       
  5204         special(SPC_NOMOD)
       
  5205     }
       
  5206     field(SEVR, DBF_MENU) {
       
  5207         prompt("Alarm Severity")
       
  5208         menu(menuAlarmSevr)
       
  5209         special(SPC_NOMOD)
       
  5210     }
       
  5211     field(NSTA, DBF_MENU) {
       
  5212         interest(2)
       
  5213         menu(menuAlarmStat)
       
  5214         special(SPC_NOMOD)
       
  5215         prompt("New Alarm Status")
       
  5216     }
       
  5217     field(NSEV, DBF_MENU) {
       
  5218         prompt("New Alarm Severity")
       
  5219         special(SPC_NOMOD)
       
  5220         menu(menuAlarmSevr)
       
  5221         interest(2)
       
  5222     }
       
  5223     field(ACKS, DBF_MENU) {
       
  5224         prompt("Alarm Ack Severity")
       
  5225         interest(2)
       
  5226         menu(menuAlarmSevr)
       
  5227         special(SPC_NOMOD)
       
  5228     }
       
  5229     field(ACKT, DBF_MENU) {
       
  5230         interest(2)
       
  5231         menu(menuYesNo)
       
  5232         special(SPC_NOMOD)
       
  5233         promptgroup("70 - Alarm")
       
  5234         initial("YES")
       
  5235         prompt("Alarm Ack Transient")
       
  5236     }
       
  5237     field(DISS, DBF_MENU) {
       
  5238         menu(menuAlarmSevr)
       
  5239         interest(1)
       
  5240         promptgroup("70 - Alarm")
       
  5241         prompt("Disable Alarm Sevrty")
       
  5242     }
       
  5243     field(LCNT, DBF_UCHAR) {
       
  5244         prompt("Lock Count")
       
  5245         interest(2)
       
  5246         special(SPC_NOMOD)
       
  5247     }
       
  5248     field(PACT, DBF_UCHAR) {
       
  5249         special(SPC_NOMOD)
       
  5250         interest(1)
       
  5251         prompt("Record active")
       
  5252     }
       
  5253     field(PUTF, DBF_UCHAR) {
       
  5254         prompt("dbPutField process")
       
  5255         special(SPC_NOMOD)
       
  5256         interest(1)
       
  5257     }
       
  5258     field(RPRO, DBF_UCHAR) {
       
  5259         prompt("Reprocess ")
       
  5260         interest(1)
       
  5261         special(SPC_NOMOD)
       
  5262     }
       
  5263     field(ASP, DBF_NOACCESS) {
       
  5264         extra("struct asgMember    *asp")
       
  5265         prompt("Access Security Pvt")
       
  5266         interest(4)
       
  5267         special(SPC_NOMOD)
       
  5268     }
       
  5269     field(PPN, DBF_NOACCESS) {
       
  5270         interest(4)
       
  5271         special(SPC_NOMOD)
       
  5272         prompt("pprocessNotify")
       
  5273         extra("struct processNotify *ppn")
       
  5274     }
       
  5275     field(PPNR, DBF_NOACCESS) {
       
  5276         special(SPC_NOMOD)
       
  5277         interest(4)
       
  5278         extra("struct processNotifyRecord *ppnr")
       
  5279         prompt("pprocessNotifyRecord")
       
  5280     }
       
  5281     field(SPVT, DBF_NOACCESS) {
       
  5282         prompt("Scan Private")
       
  5283         extra("struct scan_element *spvt")
       
  5284         special(SPC_NOMOD)
       
  5285         interest(4)
       
  5286     }
       
  5287     field(RSET, DBF_NOACCESS) {
       
  5288         prompt("Address of RSET")
       
  5289         extra("struct typed_rset   *rset")
       
  5290         interest(4)
       
  5291         special(SPC_NOMOD)
       
  5292     }
       
  5293     field(DSET, DBF_NOACCESS) {
       
  5294         prompt("DSET address")
       
  5295         extra("struct dset         *dset")
       
  5296         interest(4)
       
  5297         special(SPC_NOMOD)
       
  5298     }
       
  5299     field(DPVT, DBF_NOACCESS) {
       
  5300         prompt("Device Private")
       
  5301         extra("void                *dpvt")
       
  5302         special(SPC_NOMOD)
       
  5303         interest(4)
       
  5304     }
       
  5305     field(RDES, DBF_NOACCESS) {
       
  5306         special(SPC_NOMOD)
       
  5307         interest(4)
       
  5308         extra("struct dbRecordType *rdes")
       
  5309         prompt("Address of dbRecordType")
       
  5310     }
       
  5311     field(LSET, DBF_NOACCESS) {
       
  5312         extra("struct lockRecord   *lset")
       
  5313         prompt("Lock Set")
       
  5314         interest(4)
       
  5315         special(SPC_NOMOD)
       
  5316     }
       
  5317     field(PRIO, DBF_MENU) {
       
  5318         promptgroup("20 - Scan")
       
  5319         interest(1)
       
  5320         menu(menuPriority)
       
  5321         special(SPC_SCAN)
       
  5322         prompt("Scheduling Priority")
       
  5323     }
       
  5324     field(TPRO, DBF_UCHAR) {
       
  5325         prompt("Trace Processing")
       
  5326     }
       
  5327     field(BKPT, DBF_NOACCESS) {
       
  5328         extra("char                bkpt")
       
  5329         prompt("Break Point")
       
  5330         interest(1)
       
  5331         special(SPC_NOMOD)
       
  5332     }
       
  5333     field(UDF, DBF_UCHAR) {
       
  5334         prompt("Undefined")
       
  5335         initial("1")
       
  5336         promptgroup("10 - Common")
       
  5337         pp(TRUE)
       
  5338         interest(1)
       
  5339     }
       
  5340     field(UDFS, DBF_MENU) {
       
  5341         prompt("Undefined Alarm Sevrty")
       
  5342         initial("INVALID")
       
  5343         promptgroup("70 - Alarm")
       
  5344         interest(1)
       
  5345         menu(menuAlarmSevr)
       
  5346     }
       
  5347     field(TIME, DBF_NOACCESS) {
       
  5348         special(SPC_NOMOD)
       
  5349         interest(2)
       
  5350         extra("epicsTimeStamp      time")
       
  5351         prompt("Time")
       
  5352     }
       
  5353     field(FLNK, DBF_FWDLINK) {
       
  5354         prompt("Forward Process Link")
       
  5355         interest(1)
       
  5356         promptgroup("20 - Scan")
       
  5357     }
       
  5358     field(VAL, DBF_DOUBLE) {
       
  5359         asl(ASL0)
       
  5360         prompt("Desired Output")
       
  5361         promptgroup("40 - Input")
       
  5362         pp(TRUE)
       
  5363     }
       
  5364     field(SELM, DBF_MENU) {
       
  5365         prompt("Select Mechanism")
       
  5366         interest(1)
       
  5367         menu(dfanoutSELM)
       
  5368         promptgroup("30 - Action")
       
  5369     }
       
  5370     field(SELN, DBF_USHORT) {
       
  5371         interest(1)
       
  5372         initial("1")
       
  5373         prompt("Link Selection")
       
  5374     }
       
  5375     field(SELL, DBF_INLINK) {
       
  5376         promptgroup("30 - Action")
       
  5377         interest(1)
       
  5378         prompt("Link Selection Loc")
       
  5379     }
       
  5380     field(OUTA, DBF_OUTLINK) {
       
  5381         interest(1)
       
  5382         promptgroup("50 - Output")
       
  5383         prompt("Output Spec A")
       
  5384     }
       
  5385     field(OUTB, DBF_OUTLINK) {
       
  5386         promptgroup("50 - Output")
       
  5387         interest(1)
       
  5388         prompt("Output Spec B")
       
  5389     }
       
  5390     field(OUTC, DBF_OUTLINK) {
       
  5391         interest(1)
       
  5392         promptgroup("50 - Output")
       
  5393         prompt("Output Spec C")
       
  5394     }
       
  5395     field(OUTD, DBF_OUTLINK) {
       
  5396         interest(1)
       
  5397         promptgroup("50 - Output")
       
  5398         prompt("Output Spec D")
       
  5399     }
       
  5400     field(OUTE, DBF_OUTLINK) {
       
  5401         prompt("Output Spec E")
       
  5402         promptgroup("50 - Output")
       
  5403         interest(1)
       
  5404     }
       
  5405     field(OUTF, DBF_OUTLINK) {
       
  5406         interest(1)
       
  5407         promptgroup("50 - Output")
       
  5408         prompt("Output Spec F")
       
  5409     }
       
  5410     field(OUTG, DBF_OUTLINK) {
       
  5411         promptgroup("50 - Output")
       
  5412         interest(1)
       
  5413         prompt("Output Spec G")
       
  5414     }
       
  5415     field(OUTH, DBF_OUTLINK) {
       
  5416         promptgroup("50 - Output")
       
  5417         interest(1)
       
  5418         prompt("Output Spec H")
       
  5419     }
       
  5420     field(DOL, DBF_INLINK) {
       
  5421         prompt("Desired Output Loc")
       
  5422         promptgroup("40 - Input")
       
  5423         interest(1)
       
  5424     }
       
  5425     field(OMSL, DBF_MENU) {
       
  5426         promptgroup("50 - Output")
       
  5427         interest(1)
       
  5428         menu(menuOmsl)
       
  5429         prompt("Output Mode Select")
       
  5430     }
       
  5431     field(EGU, DBF_STRING) {
       
  5432         promptgroup("80 - Display")
       
  5433         prop(YES)
       
  5434         interest(1)
       
  5435         prompt("Engineering Units")
       
  5436         size(16)
       
  5437     }
       
  5438     field(PREC, DBF_SHORT) {
       
  5439         promptgroup("80 - Display")
       
  5440         prop(YES)
       
  5441         interest(1)
       
  5442         prompt("Display Precision")
       
  5443     }
       
  5444     field(HOPR, DBF_DOUBLE) {
       
  5445         interest(1)
       
  5446         prop(YES)
       
  5447         promptgroup("80 - Display")
       
  5448         prompt("High Operating Range")
       
  5449     }
       
  5450     field(LOPR, DBF_DOUBLE) {
       
  5451         prompt("Low Operating Range")
       
  5452         promptgroup("80 - Display")
       
  5453         prop(YES)
       
  5454         interest(1)
       
  5455     }
       
  5456     field(HIHI, DBF_DOUBLE) {
       
  5457         promptgroup("70 - Alarm")
       
  5458         pp(TRUE)
       
  5459         prop(YES)
       
  5460         interest(1)
       
  5461         prompt("Hihi Alarm Limit")
       
  5462     }
       
  5463     field(LOLO, DBF_DOUBLE) {
       
  5464         prop(YES)
       
  5465         interest(1)
       
  5466         promptgroup("70 - Alarm")
       
  5467         pp(TRUE)
       
  5468         prompt("Lolo Alarm Limit")
       
  5469     }
       
  5470     field(HIGH, DBF_DOUBLE) {
       
  5471         prompt("High Alarm Limit")
       
  5472         interest(1)
       
  5473         prop(YES)
       
  5474         pp(TRUE)
       
  5475         promptgroup("70 - Alarm")
       
  5476     }
       
  5477     field(LOW, DBF_DOUBLE) {
       
  5478         prompt("Low Alarm Limit")
       
  5479         pp(TRUE)
       
  5480         promptgroup("70 - Alarm")
       
  5481         interest(1)
       
  5482         prop(YES)
       
  5483     }
       
  5484     field(HHSV, DBF_MENU) {
       
  5485         pp(TRUE)
       
  5486         promptgroup("70 - Alarm")
       
  5487         menu(menuAlarmSevr)
       
  5488         prop(YES)
       
  5489         interest(1)
       
  5490         prompt("Hihi Severity")
       
  5491     }
       
  5492     field(LLSV, DBF_MENU) {
       
  5493         promptgroup("70 - Alarm")
       
  5494         pp(TRUE)
       
  5495         menu(menuAlarmSevr)
       
  5496         prop(YES)
       
  5497         interest(1)
       
  5498         prompt("Lolo Severity")
       
  5499     }
       
  5500     field(HSV, DBF_MENU) {
       
  5501         menu(menuAlarmSevr)
       
  5502         interest(1)
       
  5503         prop(YES)
       
  5504         pp(TRUE)
       
  5505         promptgroup("70 - Alarm")
       
  5506         prompt("High Severity")
       
  5507     }
       
  5508     field(LSV, DBF_MENU) {
       
  5509         pp(TRUE)
       
  5510         promptgroup("70 - Alarm")
       
  5511         interest(1)
       
  5512         menu(menuAlarmSevr)
       
  5513         prop(YES)
       
  5514         prompt("Low Severity")
       
  5515     }
       
  5516     field(HYST, DBF_DOUBLE) {
       
  5517         prompt("Alarm Deadband")
       
  5518         interest(1)
       
  5519         promptgroup("70 - Alarm")
       
  5520     }
       
  5521     field(ADEL, DBF_DOUBLE) {
       
  5522         prompt("Archive Deadband")
       
  5523         interest(1)
       
  5524         promptgroup("80 - Display")
       
  5525     }
       
  5526     field(MDEL, DBF_DOUBLE) {
       
  5527         interest(1)
       
  5528         promptgroup("80 - Display")
       
  5529         prompt("Monitor Deadband")
       
  5530     }
       
  5531     field(LALM, DBF_DOUBLE) {
       
  5532         prompt("Last Value Alarmed")
       
  5533         interest(3)
       
  5534         special(SPC_NOMOD)
       
  5535     }
       
  5536     field(ALST, DBF_DOUBLE) {
       
  5537         prompt("Last Value Archived")
       
  5538         special(SPC_NOMOD)
       
  5539         interest(3)
       
  5540     }
       
  5541     field(MLST, DBF_DOUBLE) {
       
  5542         special(SPC_NOMOD)
       
  5543         interest(3)
       
  5544         prompt("Last Val Monitored")
       
  5545     }
       
  5546 }
       
  5547 recordtype(aSub) {
       
  5548     %#include "epicsTypes.h"
       
  5549     %#include "link.h"
       
  5550     %#include "epicsMutex.h"
       
  5551     %#include "ellLib.h"
       
  5552     %#include "epicsTime.h"
       
  5553     %struct aSubRecord;
       
  5554     field(NAME, DBF_STRING) {
       
  5555         special(SPC_NOMOD)
       
  5556         prompt("Record Name")
       
  5557         size(61)
       
  5558     }
       
  5559     field(DESC, DBF_STRING) {
       
  5560         promptgroup("10 - Common")
       
  5561         size(41)
       
  5562         prompt("Descriptor")
       
  5563     }
       
  5564     field(ASG, DBF_STRING) {
       
  5565         size(29)
       
  5566         prompt("Access Security Group")
       
  5567         special(SPC_AS)
       
  5568         promptgroup("10 - Common")
       
  5569     }
       
  5570     field(SCAN, DBF_MENU) {
       
  5571         prompt("Scan Mechanism")
       
  5572         promptgroup("20 - Scan")
       
  5573         special(SPC_SCAN)
       
  5574         interest(1)
  8373         menu(menuScan)
  5575         menu(menuScan)
  8374     }
  5576     }
  8375     field(PINI, DBF_MENU) {
  5577     field(PINI, DBF_MENU) {
       
  5578         prompt("Process at iocInit")
       
  5579         promptgroup("20 - Scan")
  8376         menu(menuPini)
  5580         menu(menuPini)
  8377         prompt("Process at iocInit")
       
  8378         promptgroup("20 - Scan")
       
  8379         interest(1)
  5581         interest(1)
  8380     }
  5582     }
  8381     field(PHAS, DBF_SHORT) {
  5583     field(PHAS, DBF_SHORT) {
  8382         prompt("Scan Phase")
  5584         prompt("Scan Phase")
  8383         promptgroup("20 - Scan")
       
  8384         interest(1)
  5585         interest(1)
  8385         special(SPC_SCAN)
  5586         special(SPC_SCAN)
       
  5587         promptgroup("20 - Scan")
  8386     }
  5588     }
  8387     field(EVNT, DBF_STRING) {
  5589     field(EVNT, DBF_STRING) {
  8388         size(40)
  5590         size(40)
  8389         prompt("Event Name")
  5591         prompt("Event Name")
  8390         interest(1)
       
  8391         promptgroup("20 - Scan")
       
  8392         special(SPC_SCAN)
  5592         special(SPC_SCAN)
       
  5593         interest(1)
       
  5594         promptgroup("20 - Scan")
  8393     }
  5595     }
  8394     field(TSE, DBF_SHORT) {
  5596     field(TSE, DBF_SHORT) {
  8395         interest(1)
       
  8396         promptgroup("20 - Scan")
       
  8397         prompt("Time Stamp Event")
  5597         prompt("Time Stamp Event")
       
  5598         promptgroup("20 - Scan")
       
  5599         interest(1)
  8398     }
  5600     }
  8399     field(TSEL, DBF_INLINK) {
  5601     field(TSEL, DBF_INLINK) {
  8400         interest(1)
       
  8401         promptgroup("20 - Scan")
       
  8402         prompt("Time Stamp Link")
  5602         prompt("Time Stamp Link")
       
  5603         interest(1)
       
  5604         promptgroup("20 - Scan")
  8403     }
  5605     }
  8404     field(DTYP, DBF_DEVICE) {
  5606     field(DTYP, DBF_DEVICE) {
       
  5607         promptgroup("10 - Common")
       
  5608         interest(1)
  8405         prompt("Device Type")
  5609         prompt("Device Type")
  8406         interest(1)
       
  8407         promptgroup("10 - Common")
       
  8408     }
  5610     }
  8409     field(DISV, DBF_SHORT) {
  5611     field(DISV, DBF_SHORT) {
  8410         promptgroup("20 - Scan")
  5612         promptgroup("20 - Scan")
  8411         prompt("Disable Value")
  5613         prompt("Disable Value")
  8412         initial("1")
  5614         initial("1")
  8414     field(DISA, DBF_SHORT) {
  5616     field(DISA, DBF_SHORT) {
  8415         prompt("Disable")
  5617         prompt("Disable")
  8416     }
  5618     }
  8417     field(SDIS, DBF_INLINK) {
  5619     field(SDIS, DBF_INLINK) {
  8418         prompt("Scanning Disable")
  5620         prompt("Scanning Disable")
  8419         interest(1)
  5621         promptgroup("20 - Scan")
  8420         promptgroup("20 - Scan")
  5622         interest(1)
  8421     }
  5623     }
  8422     field(MLOK, DBF_NOACCESS) {
  5624     field(MLOK, DBF_NOACCESS) {
  8423         special(SPC_NOMOD)
  5625         interest(4)
  8424         interest(4)
  5626         special(SPC_NOMOD)
  8425         prompt("Monitor lock")
  5627         prompt("Monitor lock")
  8426         extra("epicsMutexId        mlok")
  5628         extra("epicsMutexId        mlok")
  8427     }
  5629     }
  8428     field(MLIS, DBF_NOACCESS) {
  5630     field(MLIS, DBF_NOACCESS) {
       
  5631         extra("ELLLIST             mlis")
  8429         prompt("Monitor List")
  5632         prompt("Monitor List")
  8430         interest(4)
  5633         special(SPC_NOMOD)
  8431         special(SPC_NOMOD)
  5634         interest(4)
  8432         extra("ELLLIST             mlis")
       
  8433     }
  5635     }
  8434     field(BKLNK, DBF_NOACCESS) {
  5636     field(BKLNK, DBF_NOACCESS) {
       
  5637         special(SPC_NOMOD)
       
  5638         interest(4)
       
  5639         extra("ELLLIST             bklnk")
  8435         prompt("Backwards link tracking")
  5640         prompt("Backwards link tracking")
  8436         interest(4)
       
  8437         special(SPC_NOMOD)
       
  8438         extra("ELLLIST             bklnk")
       
  8439     }
  5641     }
  8440     field(DISP, DBF_UCHAR) {
  5642     field(DISP, DBF_UCHAR) {
  8441         prompt("Disable putField")
  5643         prompt("Disable putField")
  8442     }
  5644     }
  8443     field(PROC, DBF_UCHAR) {
  5645     field(PROC, DBF_UCHAR) {
  8444         pp(TRUE)
  5646         interest(3)
  8445         interest(3)
  5647         pp(TRUE)
  8446         prompt("Force Processing")
  5648         prompt("Force Processing")
  8447     }
  5649     }
  8448     field(STAT, DBF_MENU) {
  5650     field(STAT, DBF_MENU) {
  8449         special(SPC_NOMOD)
  5651         initial("UDF")
  8450         prompt("Alarm Status")
  5652         prompt("Alarm Status")
       
  5653         special(SPC_NOMOD)
  8451         menu(menuAlarmStat)
  5654         menu(menuAlarmStat)
  8452         initial("UDF")
       
  8453     }
  5655     }
  8454     field(SEVR, DBF_MENU) {
  5656     field(SEVR, DBF_MENU) {
       
  5657         menu(menuAlarmSevr)
  8455         special(SPC_NOMOD)
  5658         special(SPC_NOMOD)
  8456         prompt("Alarm Severity")
  5659         prompt("Alarm Severity")
  8457         menu(menuAlarmSevr)
       
  8458     }
  5660     }
  8459     field(NSTA, DBF_MENU) {
  5661     field(NSTA, DBF_MENU) {
       
  5662         special(SPC_NOMOD)
       
  5663         interest(2)
  8460         menu(menuAlarmStat)
  5664         menu(menuAlarmStat)
  8461         prompt("New Alarm Status")
  5665         prompt("New Alarm Status")
  8462         interest(2)
       
  8463         special(SPC_NOMOD)
       
  8464     }
  5666     }
  8465     field(NSEV, DBF_MENU) {
  5667     field(NSEV, DBF_MENU) {
  8466         menu(menuAlarmSevr)
       
  8467         prompt("New Alarm Severity")
  5668         prompt("New Alarm Severity")
       
  5669         menu(menuAlarmSevr)
  8468         interest(2)
  5670         interest(2)
  8469         special(SPC_NOMOD)
  5671         special(SPC_NOMOD)
  8470     }
  5672     }
  8471     field(ACKS, DBF_MENU) {
  5673     field(ACKS, DBF_MENU) {
  8472         menu(menuAlarmSevr)
  5674         menu(menuAlarmSevr)
  8473         special(SPC_NOMOD)
  5675         interest(2)
  8474         interest(2)
  5676         special(SPC_NOMOD)
  8475         prompt("Alarm Ack Severity")
  5677         prompt("Alarm Ack Severity")
  8476     }
  5678     }
  8477     field(ACKT, DBF_MENU) {
  5679     field(ACKT, DBF_MENU) {
  8478         initial("YES")
  5680         initial("YES")
  8479         special(SPC_NOMOD)
       
  8480         interest(2)
       
  8481         promptgroup("70 - Alarm")
       
  8482         prompt("Alarm Ack Transient")
  5681         prompt("Alarm Ack Transient")
       
  5682         special(SPC_NOMOD)
  8483         menu(menuYesNo)
  5683         menu(menuYesNo)
       
  5684         interest(2)
       
  5685         promptgroup("70 - Alarm")
  8484     }
  5686     }
  8485     field(DISS, DBF_MENU) {
  5687     field(DISS, DBF_MENU) {
       
  5688         promptgroup("70 - Alarm")
       
  5689         interest(1)
  8486         menu(menuAlarmSevr)
  5690         menu(menuAlarmSevr)
  8487         prompt("Disable Alarm Sevrty")
  5691         prompt("Disable Alarm Sevrty")
  8488         interest(1)
       
  8489         promptgroup("70 - Alarm")
       
  8490     }
  5692     }
  8491     field(LCNT, DBF_UCHAR) {
  5693     field(LCNT, DBF_UCHAR) {
  8492         prompt("Lock Count")
  5694         prompt("Lock Count")
  8493         special(SPC_NOMOD)
  5695         interest(2)
  8494         interest(2)
  5696         special(SPC_NOMOD)
  8495     }
  5697     }
  8496     field(PACT, DBF_UCHAR) {
  5698     field(PACT, DBF_UCHAR) {
  8497         prompt("Record active")
  5699         prompt("Record active")
  8498         special(SPC_NOMOD)
  5700         interest(1)
  8499         interest(1)
  5701         special(SPC_NOMOD)
  8500     }
  5702     }
  8501     field(PUTF, DBF_UCHAR) {
  5703     field(PUTF, DBF_UCHAR) {
  8502         interest(1)
  5704         interest(1)
  8503         special(SPC_NOMOD)
  5705         special(SPC_NOMOD)
  8504         prompt("dbPutField process")
  5706         prompt("dbPutField process")
  8505     }
  5707     }
  8506     field(RPRO, DBF_UCHAR) {
  5708     field(RPRO, DBF_UCHAR) {
  8507         interest(1)
  5709         special(SPC_NOMOD)
  8508         special(SPC_NOMOD)
  5710         interest(1)
  8509         prompt("Reprocess ")
  5711         prompt("Reprocess ")
  8510     }
  5712     }
  8511     field(ASP, DBF_NOACCESS) {
  5713     field(ASP, DBF_NOACCESS) {
  8512         extra("struct asgMember    *asp")
  5714         extra("struct asgMember    *asp")
  8513         prompt("Access Security Pvt")
  5715         prompt("Access Security Pvt")
  8514         special(SPC_NOMOD)
  5716         special(SPC_NOMOD)
  8515         interest(4)
  5717         interest(4)
  8516     }
  5718     }
  8517     field(PPN, DBF_NOACCESS) {
  5719     field(PPN, DBF_NOACCESS) {
  8518         special(SPC_NOMOD)
  5720         interest(4)
  8519         interest(4)
  5721         special(SPC_NOMOD)
  8520         prompt("pprocessNotify")
  5722         prompt("pprocessNotify")
  8521         extra("struct processNotify *ppn")
  5723         extra("struct processNotify *ppn")
  8522     }
  5724     }
  8523     field(PPNR, DBF_NOACCESS) {
  5725     field(PPNR, DBF_NOACCESS) {
       
  5726         extra("struct processNotifyRecord *ppnr")
  8524         prompt("pprocessNotifyRecord")
  5727         prompt("pprocessNotifyRecord")
  8525         special(SPC_NOMOD)
  5728         special(SPC_NOMOD)
  8526         interest(4)
  5729         interest(4)
  8527         extra("struct processNotifyRecord *ppnr")
       
  8528     }
  5730     }
  8529     field(SPVT, DBF_NOACCESS) {
  5731     field(SPVT, DBF_NOACCESS) {
       
  5732         prompt("Scan Private")
  8530         extra("struct scan_element *spvt")
  5733         extra("struct scan_element *spvt")
  8531         special(SPC_NOMOD)
  5734         special(SPC_NOMOD)
  8532         interest(4)
  5735         interest(4)
  8533         prompt("Scan Private")
       
  8534     }
  5736     }
  8535     field(RSET, DBF_NOACCESS) {
  5737     field(RSET, DBF_NOACCESS) {
       
  5738         prompt("Address of RSET")
  8536         extra("struct typed_rset   *rset")
  5739         extra("struct typed_rset   *rset")
  8537         prompt("Address of RSET")
       
  8538         special(SPC_NOMOD)
  5740         special(SPC_NOMOD)
  8539         interest(4)
  5741         interest(4)
  8540     }
  5742     }
  8541     field(DSET, DBF_NOACCESS) {
  5743     field(DSET, DBF_NOACCESS) {
  8542         extra("struct dset         *dset")
  5744         extra("struct dset         *dset")
  8543         prompt("DSET address")
  5745         prompt("DSET address")
  8544         interest(4)
  5746         interest(4)
  8545         special(SPC_NOMOD)
  5747         special(SPC_NOMOD)
  8546     }
  5748     }
  8547     field(DPVT, DBF_NOACCESS) {
  5749     field(DPVT, DBF_NOACCESS) {
  8548         interest(4)
       
  8549         special(SPC_NOMOD)
       
  8550         prompt("Device Private")
  5750         prompt("Device Private")
  8551         extra("void                *dpvt")
  5751         extra("void                *dpvt")
       
  5752         special(SPC_NOMOD)
       
  5753         interest(4)
  8552     }
  5754     }
  8553     field(RDES, DBF_NOACCESS) {
  5755     field(RDES, DBF_NOACCESS) {
  8554         extra("struct dbRecordType *rdes")
  5756         extra("struct dbRecordType *rdes")
  8555         interest(4)
       
  8556         special(SPC_NOMOD)
       
  8557         prompt("Address of dbRecordType")
  5757         prompt("Address of dbRecordType")
       
  5758         special(SPC_NOMOD)
       
  5759         interest(4)
  8558     }
  5760     }
  8559     field(LSET, DBF_NOACCESS) {
  5761     field(LSET, DBF_NOACCESS) {
  8560         extra("struct lockRecord   *lset")
  5762         extra("struct lockRecord   *lset")
  8561         interest(4)
       
  8562         special(SPC_NOMOD)
       
  8563         prompt("Lock Set")
  5763         prompt("Lock Set")
       
  5764         special(SPC_NOMOD)
       
  5765         interest(4)
  8564     }
  5766     }
  8565     field(PRIO, DBF_MENU) {
  5767     field(PRIO, DBF_MENU) {
  8566         prompt("Scheduling Priority")
  5768         prompt("Scheduling Priority")
  8567         interest(1)
       
  8568         special(SPC_SCAN)
  5769         special(SPC_SCAN)
  8569         promptgroup("20 - Scan")
  5770         interest(1)
  8570         menu(menuPriority)
  5771         menu(menuPriority)
       
  5772         promptgroup("20 - Scan")
  8571     }
  5773     }
  8572     field(TPRO, DBF_UCHAR) {
  5774     field(TPRO, DBF_UCHAR) {
  8573         prompt("Trace Processing")
  5775         prompt("Trace Processing")
  8574     }
  5776     }
  8575     field(BKPT, DBF_NOACCESS) {
  5777     field(BKPT, DBF_NOACCESS) {
  8576         interest(1)
  5778         interest(1)
  8577         special(SPC_NOMOD)
  5779         special(SPC_NOMOD)
       
  5780         extra("char                bkpt")
  8578         prompt("Break Point")
  5781         prompt("Break Point")
  8579         extra("char                bkpt")
       
  8580     }
  5782     }
  8581     field(UDF, DBF_UCHAR) {
  5783     field(UDF, DBF_UCHAR) {
  8582         promptgroup("10 - Common")
  5784         initial("1")
  8583         interest(1)
       
  8584         prompt("Undefined")
  5785         prompt("Undefined")
  8585         pp(TRUE)
  5786         interest(1)
  8586         initial("1")
  5787         pp(TRUE)
       
  5788         promptgroup("10 - Common")
  8587     }
  5789     }
  8588     field(UDFS, DBF_MENU) {
  5790     field(UDFS, DBF_MENU) {
       
  5791         menu(menuAlarmSevr)
       
  5792         interest(1)
       
  5793         promptgroup("70 - Alarm")
  8589         initial("INVALID")
  5794         initial("INVALID")
  8590         menu(menuAlarmSevr)
       
  8591         prompt("Undefined Alarm Sevrty")
  5795         prompt("Undefined Alarm Sevrty")
  8592         promptgroup("70 - Alarm")
       
  8593         interest(1)
       
  8594     }
  5796     }
  8595     field(TIME, DBF_NOACCESS) {
  5797     field(TIME, DBF_NOACCESS) {
       
  5798         special(SPC_NOMOD)
       
  5799         interest(2)
  8596         extra("epicsTimeStamp      time")
  5800         extra("epicsTimeStamp      time")
  8597         interest(2)
       
  8598         special(SPC_NOMOD)
       
  8599         prompt("Time")
  5801         prompt("Time")
  8600     }
  5802     }
  8601     field(FLNK, DBF_FWDLINK) {
  5803     field(FLNK, DBF_FWDLINK) {
  8602         interest(1)
  5804         interest(1)
  8603         promptgroup("20 - Scan")
  5805         promptgroup("20 - Scan")
  8604         prompt("Forward Process Link")
  5806         prompt("Forward Process Link")
  8605     }
  5807     }
  8606     field(VAL, DBF_NOACCESS) {
  5808     field(VAL, DBF_LONG) {
  8607         asl(ASL0)
  5809         asl(ASL0)
  8608         prompt("Current Value")
  5810         prompt("Subr. return value")
       
  5811     }
       
  5812     field(OVAL, DBF_LONG) {
       
  5813         special(SPC_NOMOD)
       
  5814         interest(3)
       
  5815         prompt("Old return value")
       
  5816     }
       
  5817     field(INAM, DBF_STRING) {
       
  5818         promptgroup("30 - Action")
       
  5819         interest(1)
       
  5820         special(SPC_NOMOD)
       
  5821         prompt("Initialize Subr. Name")
       
  5822         size(41)
       
  5823     }
       
  5824     field(LFLG, DBF_MENU) {
       
  5825         prompt("Subr. Input Enable")
       
  5826         promptgroup("30 - Action")
       
  5827         menu(aSubLFLG)
       
  5828         interest(1)
       
  5829     }
       
  5830     field(SUBL, DBF_INLINK) {
       
  5831         prompt("Subroutine Name Link")
       
  5832         special(SPC_NOMOD)
       
  5833         interest(1)
       
  5834         promptgroup("30 - Action")
       
  5835     }
       
  5836     field(SNAM, DBF_STRING) {
       
  5837         size(41)
       
  5838         prompt("Process Subr. Name")
       
  5839         special(SPC_MOD)
       
  5840         interest(1)
       
  5841         promptgroup("30 - Action")
       
  5842     }
       
  5843     field(ONAM, DBF_STRING) {
       
  5844         size(41)
       
  5845         prompt("Old Subr. Name")
       
  5846         special(SPC_NOMOD)
       
  5847         interest(3)
       
  5848         promptgroup("30 - Action")
       
  5849     }
       
  5850     field(SADR, DBF_NOACCESS) {
       
  5851         extra("long (*sadr)(struct aSubRecord *)")
       
  5852         prompt("Subroutine Address")
       
  5853         special(SPC_NOMOD)
       
  5854         interest(2)
       
  5855     }
       
  5856     field(CADR, DBF_NOACCESS) {
       
  5857         interest(2)
       
  5858         special(SPC_NOMOD)
       
  5859         prompt("Subroutine Cleanup Address")
       
  5860         extra("void (*cadr)(struct aSubRecord *)")
       
  5861     }
       
  5862     field(BRSV, DBF_MENU) {
       
  5863         menu(menuAlarmSevr)
       
  5864         interest(1)
       
  5865         promptgroup("70 - Alarm")
       
  5866         pp(TRUE)
       
  5867         prompt("Bad Return Severity")
       
  5868     }
       
  5869     field(PREC, DBF_SHORT) {
       
  5870         prompt("Display Precision")
       
  5871         interest(1)
       
  5872         prop(YES)
       
  5873         promptgroup("80 - Display")
       
  5874     }
       
  5875     field(EFLG, DBF_MENU) {
       
  5876         initial("1")
       
  5877         prompt("Output Event Flag")
       
  5878         menu(aSubEFLG)
       
  5879         interest(1)
       
  5880         promptgroup("50 - Output")
       
  5881     }
       
  5882     field(INPA, DBF_INLINK) {
       
  5883         prompt("Input Link A")
       
  5884         promptgroup("41 - Input A-G")
       
  5885         interest(1)
       
  5886     }
       
  5887     field(INPB, DBF_INLINK) {
       
  5888         prompt("Input Link B")
       
  5889         promptgroup("41 - Input A-G")
       
  5890         interest(1)
       
  5891     }
       
  5892     field(INPC, DBF_INLINK) {
       
  5893         prompt("Input Link C")
       
  5894         interest(1)
       
  5895         promptgroup("41 - Input A-G")
       
  5896     }
       
  5897     field(INPD, DBF_INLINK) {
       
  5898         prompt("Input Link D")
       
  5899         promptgroup("41 - Input A-G")
       
  5900         interest(1)
       
  5901     }
       
  5902     field(INPE, DBF_INLINK) {
       
  5903         interest(1)
       
  5904         promptgroup("41 - Input A-G")
       
  5905         prompt("Input Link E")
       
  5906     }
       
  5907     field(INPF, DBF_INLINK) {
       
  5908         prompt("Input Link F")
       
  5909         interest(1)
       
  5910         promptgroup("41 - Input A-G")
       
  5911     }
       
  5912     field(INPG, DBF_INLINK) {
       
  5913         interest(1)
       
  5914         promptgroup("41 - Input A-G")
       
  5915         prompt("Input Link G")
       
  5916     }
       
  5917     field(INPH, DBF_INLINK) {
       
  5918         prompt("Input Link H")
       
  5919         interest(1)
       
  5920         promptgroup("42 - Input H-N")
       
  5921     }
       
  5922     field(INPI, DBF_INLINK) {
       
  5923         interest(1)
       
  5924         promptgroup("42 - Input H-N")
       
  5925         prompt("Input Link I")
       
  5926     }
       
  5927     field(INPJ, DBF_INLINK) {
       
  5928         prompt("Input Link J")
       
  5929         interest(1)
       
  5930         promptgroup("42 - Input H-N")
       
  5931     }
       
  5932     field(INPK, DBF_INLINK) {
       
  5933         prompt("Input Link K")
       
  5934         promptgroup("42 - Input H-N")
       
  5935         interest(1)
       
  5936     }
       
  5937     field(INPL, DBF_INLINK) {
       
  5938         promptgroup("42 - Input H-N")
       
  5939         interest(1)
       
  5940         prompt("Input Link L")
       
  5941     }
       
  5942     field(INPM, DBF_INLINK) {
       
  5943         interest(1)
       
  5944         promptgroup("42 - Input H-N")
       
  5945         prompt("Input Link M")
       
  5946     }
       
  5947     field(INPN, DBF_INLINK) {
       
  5948         prompt("Input Link N")
       
  5949         promptgroup("42 - Input H-N")
       
  5950         interest(1)
       
  5951     }
       
  5952     field(INPO, DBF_INLINK) {
       
  5953         interest(1)
       
  5954         promptgroup("43 - Input O-U")
       
  5955         prompt("Input Link O")
       
  5956     }
       
  5957     field(INPP, DBF_INLINK) {
       
  5958         interest(1)
       
  5959         promptgroup("43 - Input O-U")
       
  5960         prompt("Input Link P")
       
  5961     }
       
  5962     field(INPQ, DBF_INLINK) {
       
  5963         promptgroup("43 - Input O-U")
       
  5964         interest(1)
       
  5965         prompt("Input Link Q")
       
  5966     }
       
  5967     field(INPR, DBF_INLINK) {
       
  5968         prompt("Input Link R")
       
  5969         promptgroup("43 - Input O-U")
       
  5970         interest(1)
       
  5971     }
       
  5972     field(INPS, DBF_INLINK) {
       
  5973         interest(1)
       
  5974         promptgroup("43 - Input O-U")
       
  5975         prompt("Input Link S")
       
  5976     }
       
  5977     field(INPT, DBF_INLINK) {
       
  5978         promptgroup("43 - Input O-U")
       
  5979         interest(1)
       
  5980         prompt("Input Link T")
       
  5981     }
       
  5982     field(INPU, DBF_INLINK) {
       
  5983         prompt("Input Link U")
       
  5984         interest(1)
       
  5985         promptgroup("43 - Input O-U")
       
  5986     }
       
  5987     field(A, DBF_NOACCESS) {
  8609         special(SPC_DBADDR)
  5988         special(SPC_DBADDR)
  8610         pp(TRUE)
  5989         interest(2)
  8611         extra("char *val")
  5990         extra("void *a")
  8612     }
  5991         asl(ASL0)
  8613     field(OVAL, DBF_NOACCESS) {
  5992         prompt("Input value A")
  8614         extra("char *oval")
  5993     }
       
  5994     field(B, DBF_NOACCESS) {
       
  5995         asl(ASL0)
       
  5996         extra("void *b")
       
  5997         prompt("Input value B")
       
  5998         interest(2)
  8615         special(SPC_DBADDR)
  5999         special(SPC_DBADDR)
  8616         interest(3)
  6000     }
  8617         prompt("Old Value")
  6001     field(C, DBF_NOACCESS) {
  8618     }
  6002         extra("void *c")
  8619     field(SIZV, DBF_USHORT) {
  6003         asl(ASL0)
  8620         initial("41")
  6004         prompt("Input value C")
  8621         prompt("Size of buffers")
  6005         special(SPC_DBADDR)
  8622         promptgroup("40 - Input")
  6006         interest(2)
  8623         interest(1)
  6007     }
  8624         special(SPC_NOMOD)
  6008     field(D, DBF_NOACCESS) {
  8625     }
  6009         interest(2)
  8626     field(LEN, DBF_ULONG) {
  6010         special(SPC_DBADDR)
  8627         prompt("Length of VAL")
  6011         prompt("Input value D")
  8628         special(SPC_NOMOD)
  6012         asl(ASL0)
  8629     }
  6013         extra("void *d")
  8630     field(OLEN, DBF_ULONG) {
  6014     }
  8631         prompt("Length of OVAL")
  6015     field(E, DBF_NOACCESS) {
  8632         special(SPC_NOMOD)
  6016         interest(2)
  8633     }
  6017         special(SPC_DBADDR)
  8634     field(INP, DBF_INLINK) {
  6018         asl(ASL0)
  8635         promptgroup("40 - Input")
  6019         extra("void *e")
  8636         interest(1)
  6020         prompt("Input value E")
  8637         prompt("Input Specification")
  6021     }
  8638     }
  6022     field(F, DBF_NOACCESS) {
  8639     field(MPST, DBF_MENU) {
  6023         prompt("Input value F")
  8640         interest(1)
  6024         extra("void *f")
  8641         promptgroup("80 - Display")
  6025         asl(ASL0)
  8642         prompt("Post Value Monitors")
  6026         special(SPC_DBADDR)
  8643         menu(menuPost)
  6027         interest(2)
  8644     }
  6028     }
  8645     field(APST, DBF_MENU) {
  6029     field(G, DBF_NOACCESS) {
  8646         menu(menuPost)
  6030         special(SPC_DBADDR)
  8647         promptgroup("80 - Display")
  6031         interest(2)
  8648         interest(1)
  6032         extra("void *g")
  8649         prompt("Post Archive Monitors")
  6033         asl(ASL0)
  8650     }
  6034         prompt("Input value G")
  8651     field(SIML, DBF_INLINK) {
  6035     }
  8652         interest(1)
  6036     field(H, DBF_NOACCESS) {
  8653         promptgroup("90 - Simulate")
  6037         prompt("Input value H")
  8654         prompt("Simulation Mode Link")
  6038         extra("void *h")
  8655     }
  6039         asl(ASL0)
  8656     field(SIMM, DBF_MENU) {
  6040         special(SPC_DBADDR)
  8657         prompt("Simulation Mode")
  6041         interest(2)
  8658         interest(1)
  6042     }
  8659         special(SPC_MOD)
  6043     field(I, DBF_NOACCESS) {
  8660         menu(menuYesNo)
  6044         special(SPC_DBADDR)
  8661     }
  6045         interest(2)
  8662     field(SIMS, DBF_MENU) {
  6046         extra("void *i")
  8663         interest(2)
  6047         asl(ASL0)
  8664         promptgroup("90 - Simulate")
  6048         prompt("Input value I")
  8665         prompt("Simulation Mode Severity")
  6049     }
  8666         menu(menuAlarmSevr)
  6050     field(J, DBF_NOACCESS) {
  8667     }
  6051         extra("void *j")
  8668     field(SIOL, DBF_INLINK) {
  6052         asl(ASL0)
  8669         prompt("Simulation Input Link")
  6053         prompt("Input value J")
  8670         promptgroup("90 - Simulate")
  6054         special(SPC_DBADDR)
  8671         interest(1)
  6055         interest(2)
  8672     }
  6056     }
  8673     field(OLDSIMM, DBF_MENU) {
  6057     field(K, DBF_NOACCESS) {
  8674         menu(menuSimm)
  6058         special(SPC_DBADDR)
  8675         special(SPC_NOMOD)
  6059         interest(2)
  8676         interest(4)
  6060         extra("void *k")
  8677         prompt("Prev. Simulation Mode")
  6061         asl(ASL0)
  8678     }
  6062         prompt("Input value K")
  8679     field(SSCN, DBF_MENU) {
  6063     }
  8680         menu(menuScan)
  6064     field(L, DBF_NOACCESS) {
  8681         interest(1)
  6065         prompt("Input value L")
  8682         promptgroup("90 - Simulate")
  6066         asl(ASL0)
  8683         prompt("Sim. Mode Scan")
  6067         extra("void *l")
  8684         initial("65535")
  6068         interest(2)
  8685     }
  6069         special(SPC_DBADDR)
  8686     field(SDLY, DBF_DOUBLE) {
  6070     }
  8687         initial("-1.0")
  6071     field(M, DBF_NOACCESS) {
  8688         prompt("Sim. Mode Async Delay")
  6072         special(SPC_DBADDR)
  8689         interest(2)
  6073         interest(2)
  8690         promptgroup("90 - Simulate")
  6074         extra("void *m")
  8691     }
  6075         asl(ASL0)
  8692     field(SIMPVT, DBF_NOACCESS) {
  6076         prompt("Input value M")
  8693         extra("CALLBACK            *simpvt")
  6077     }
  8694         special(SPC_NOMOD)
  6078     field(N, DBF_NOACCESS) {
  8695         interest(4)
  6079         interest(2)
  8696         prompt("Sim. Mode Private")
  6080         special(SPC_DBADDR)
       
  6081         asl(ASL0)
       
  6082         extra("void *n")
       
  6083         prompt("Input value N")
       
  6084     }
       
  6085     field(O, DBF_NOACCESS) {
       
  6086         interest(2)
       
  6087         special(SPC_DBADDR)
       
  6088         prompt("Input value O")
       
  6089         asl(ASL0)
       
  6090         extra("void *o")
       
  6091     }
       
  6092     field(P, DBF_NOACCESS) {
       
  6093         special(SPC_DBADDR)
       
  6094         interest(2)
       
  6095         extra("void *p")
       
  6096         asl(ASL0)
       
  6097         prompt("Input value P")
       
  6098     }
       
  6099     field(Q, DBF_NOACCESS) {
       
  6100         asl(ASL0)
       
  6101         extra("void *q")
       
  6102         prompt("Input value Q")
       
  6103         interest(2)
       
  6104         special(SPC_DBADDR)
       
  6105     }
       
  6106     field(R, DBF_NOACCESS) {
       
  6107         prompt("Input value R")
       
  6108         extra("void *r")
       
  6109         asl(ASL0)
       
  6110         special(SPC_DBADDR)
       
  6111         interest(2)
       
  6112     }
       
  6113     field(S, DBF_NOACCESS) {
       
  6114         prompt("Input value S")
       
  6115         asl(ASL0)
       
  6116         extra("void *s")
       
  6117         interest(2)
       
  6118         special(SPC_DBADDR)
       
  6119     }
       
  6120     field(T, DBF_NOACCESS) {
       
  6121         extra("void *t")
       
  6122         asl(ASL0)
       
  6123         prompt("Input value T")
       
  6124         special(SPC_DBADDR)
       
  6125         interest(2)
       
  6126     }
       
  6127     field(U, DBF_NOACCESS) {
       
  6128         special(SPC_DBADDR)
       
  6129         interest(2)
       
  6130         extra("void *u")
       
  6131         asl(ASL0)
       
  6132         prompt("Input value U")
       
  6133     }
       
  6134     field(FTA, DBF_MENU) {
       
  6135         promptgroup("41 - Input A-G")
       
  6136         menu(menuFtype)
       
  6137         interest(1)
       
  6138         special(SPC_NOMOD)
       
  6139         prompt("Type of A")
       
  6140         initial("DOUBLE")
       
  6141     }
       
  6142     field(FTB, DBF_MENU) {
       
  6143         prompt("Type of B")
       
  6144         initial("DOUBLE")
       
  6145         promptgroup("41 - Input A-G")
       
  6146         interest(1)
       
  6147         menu(menuFtype)
       
  6148         special(SPC_NOMOD)
       
  6149     }
       
  6150     field(FTC, DBF_MENU) {
       
  6151         promptgroup("41 - Input A-G")
       
  6152         interest(1)
       
  6153         menu(menuFtype)
       
  6154         special(SPC_NOMOD)
       
  6155         prompt("Type of C")
       
  6156         initial("DOUBLE")
       
  6157     }
       
  6158     field(FTD, DBF_MENU) {
       
  6159         promptgroup("41 - Input A-G")
       
  6160         menu(menuFtype)
       
  6161         interest(1)
       
  6162         special(SPC_NOMOD)
       
  6163         prompt("Type of D")
       
  6164         initial("DOUBLE")
       
  6165     }
       
  6166     field(FTE, DBF_MENU) {
       
  6167         special(SPC_NOMOD)
       
  6168         interest(1)
       
  6169         menu(menuFtype)
       
  6170         promptgroup("41 - Input A-G")
       
  6171         initial("DOUBLE")
       
  6172         prompt("Type of E")
       
  6173     }
       
  6174     field(FTF, DBF_MENU) {
       
  6175         promptgroup("41 - Input A-G")
       
  6176         interest(1)
       
  6177         menu(menuFtype)
       
  6178         special(SPC_NOMOD)
       
  6179         prompt("Type of F")
       
  6180         initial("DOUBLE")
       
  6181     }
       
  6182     field(FTG, DBF_MENU) {
       
  6183         special(SPC_NOMOD)
       
  6184         menu(menuFtype)
       
  6185         interest(1)
       
  6186         promptgroup("41 - Input A-G")
       
  6187         initial("DOUBLE")
       
  6188         prompt("Type of G")
       
  6189     }
       
  6190     field(FTH, DBF_MENU) {
       
  6191         special(SPC_NOMOD)
       
  6192         interest(1)
       
  6193         menu(menuFtype)
       
  6194         promptgroup("42 - Input H-N")
       
  6195         initial("DOUBLE")
       
  6196         prompt("Type of H")
       
  6197     }
       
  6198     field(FTI, DBF_MENU) {
       
  6199         special(SPC_NOMOD)
       
  6200         menu(menuFtype)
       
  6201         interest(1)
       
  6202         promptgroup("42 - Input H-N")
       
  6203         initial("DOUBLE")
       
  6204         prompt("Type of I")
       
  6205     }
       
  6206     field(FTJ, DBF_MENU) {
       
  6207         interest(1)
       
  6208         menu(menuFtype)
       
  6209         special(SPC_NOMOD)
       
  6210         promptgroup("42 - Input H-N")
       
  6211         initial("DOUBLE")
       
  6212         prompt("Type of J")
       
  6213     }
       
  6214     field(FTK, DBF_MENU) {
       
  6215         special(SPC_NOMOD)
       
  6216         interest(1)
       
  6217         menu(menuFtype)
       
  6218         promptgroup("42 - Input H-N")
       
  6219         initial("DOUBLE")
       
  6220         prompt("Type of K")
       
  6221     }
       
  6222     field(FTL, DBF_MENU) {
       
  6223         special(SPC_NOMOD)
       
  6224         menu(menuFtype)
       
  6225         interest(1)
       
  6226         promptgroup("42 - Input H-N")
       
  6227         initial("DOUBLE")
       
  6228         prompt("Type of L")
       
  6229     }
       
  6230     field(FTM, DBF_MENU) {
       
  6231         special(SPC_NOMOD)
       
  6232         menu(menuFtype)
       
  6233         interest(1)
       
  6234         promptgroup("42 - Input H-N")
       
  6235         initial("DOUBLE")
       
  6236         prompt("Type of M")
       
  6237     }
       
  6238     field(FTN, DBF_MENU) {
       
  6239         prompt("Type of N")
       
  6240         initial("DOUBLE")
       
  6241         promptgroup("42 - Input H-N")
       
  6242         menu(menuFtype)
       
  6243         interest(1)
       
  6244         special(SPC_NOMOD)
       
  6245     }
       
  6246     field(FTO, DBF_MENU) {
       
  6247         interest(1)
       
  6248         menu(menuFtype)
       
  6249         special(SPC_NOMOD)
       
  6250         promptgroup("43 - Input O-U")
       
  6251         initial("DOUBLE")
       
  6252         prompt("Type of O")
       
  6253     }
       
  6254     field(FTP, DBF_MENU) {
       
  6255         prompt("Type of P")
       
  6256         initial("DOUBLE")
       
  6257         promptgroup("43 - Input O-U")
       
  6258         special(SPC_NOMOD)
       
  6259         interest(1)
       
  6260         menu(menuFtype)
       
  6261     }
       
  6262     field(FTQ, DBF_MENU) {
       
  6263         promptgroup("43 - Input O-U")
       
  6264         special(SPC_NOMOD)
       
  6265         interest(1)
       
  6266         menu(menuFtype)
       
  6267         prompt("Type of Q")
       
  6268         initial("DOUBLE")
       
  6269     }
       
  6270     field(FTR, DBF_MENU) {
       
  6271         prompt("Type of R")
       
  6272         initial("DOUBLE")
       
  6273         promptgroup("43 - Input O-U")
       
  6274         interest(1)
       
  6275         menu(menuFtype)
       
  6276         special(SPC_NOMOD)
       
  6277     }
       
  6278     field(FTS, DBF_MENU) {
       
  6279         promptgroup("43 - Input O-U")
       
  6280         special(SPC_NOMOD)
       
  6281         menu(menuFtype)
       
  6282         interest(1)
       
  6283         prompt("Type of S")
       
  6284         initial("DOUBLE")
       
  6285     }
       
  6286     field(FTT, DBF_MENU) {
       
  6287         initial("DOUBLE")
       
  6288         prompt("Type of T")
       
  6289         special(SPC_NOMOD)
       
  6290         menu(menuFtype)
       
  6291         interest(1)
       
  6292         promptgroup("43 - Input O-U")
       
  6293     }
       
  6294     field(FTU, DBF_MENU) {
       
  6295         promptgroup("43 - Input O-U")
       
  6296         menu(menuFtype)
       
  6297         interest(1)
       
  6298         special(SPC_NOMOD)
       
  6299         prompt("Type of U")
       
  6300         initial("DOUBLE")
       
  6301     }
       
  6302     field(NOA, DBF_ULONG) {
       
  6303         interest(1)
       
  6304         special(SPC_NOMOD)
       
  6305         promptgroup("41 - Input A-G")
       
  6306         initial("1")
       
  6307         prompt("Max. elements in A")
       
  6308     }
       
  6309     field(NOB, DBF_ULONG) {
       
  6310         special(SPC_NOMOD)
       
  6311         interest(1)
       
  6312         promptgroup("41 - Input A-G")
       
  6313         initial("1")
       
  6314         prompt("Max. elements in B")
       
  6315     }
       
  6316     field(NOC, DBF_ULONG) {
       
  6317         prompt("Max. elements in C")
       
  6318         initial("1")
       
  6319         promptgroup("41 - Input A-G")
       
  6320         interest(1)
       
  6321         special(SPC_NOMOD)
       
  6322     }
       
  6323     field(NOD, DBF_ULONG) {
       
  6324         interest(1)
       
  6325         special(SPC_NOMOD)
       
  6326         promptgroup("41 - Input A-G")
       
  6327         initial("1")
       
  6328         prompt("Max. elements in D")
       
  6329     }
       
  6330     field(NOE, DBF_ULONG) {
       
  6331         interest(1)
       
  6332         special(SPC_NOMOD)
       
  6333         promptgroup("41 - Input A-G")
       
  6334         initial("1")
       
  6335         prompt("Max. elements in E")
       
  6336     }
       
  6337     field(NOF, DBF_ULONG) {
       
  6338         initial("1")
       
  6339         prompt("Max. elements in F")
       
  6340         special(SPC_NOMOD)
       
  6341         interest(1)
       
  6342         promptgroup("41 - Input A-G")
       
  6343     }
       
  6344     field(NOG, DBF_ULONG) {
       
  6345         prompt("Max. elements in G")
       
  6346         initial("1")
       
  6347         promptgroup("41 - Input A-G")
       
  6348         special(SPC_NOMOD)
       
  6349         interest(1)
       
  6350     }
       
  6351     field(NOH, DBF_ULONG) {
       
  6352         promptgroup("42 - Input H-N")
       
  6353         interest(1)
       
  6354         special(SPC_NOMOD)
       
  6355         prompt("Max. elements in H")
       
  6356         initial("1")
       
  6357     }
       
  6358     field(NOI, DBF_ULONG) {
       
  6359         prompt("Max. elements in I")
       
  6360         initial("1")
       
  6361         promptgroup("42 - Input H-N")
       
  6362         special(SPC_NOMOD)
       
  6363         interest(1)
       
  6364     }
       
  6365     field(NOJ, DBF_ULONG) {
       
  6366         special(SPC_NOMOD)
       
  6367         interest(1)
       
  6368         promptgroup("42 - Input H-N")
       
  6369         initial("1")
       
  6370         prompt("Max. elements in J")
       
  6371     }
       
  6372     field(NOK, DBF_ULONG) {
       
  6373         prompt("Max. elements in K")
       
  6374         initial("1")
       
  6375         promptgroup("42 - Input H-N")
       
  6376         special(SPC_NOMOD)
       
  6377         interest(1)
       
  6378     }
       
  6379     field(NOL, DBF_ULONG) {
       
  6380         interest(1)
       
  6381         special(SPC_NOMOD)
       
  6382         promptgroup("42 - Input H-N")
       
  6383         initial("1")
       
  6384         prompt("Max. elements in L")
       
  6385     }
       
  6386     field(NOM, DBF_ULONG) {
       
  6387         special(SPC_NOMOD)
       
  6388         interest(1)
       
  6389         promptgroup("42 - Input H-N")
       
  6390         initial("1")
       
  6391         prompt("Max. elements in M")
       
  6392     }
       
  6393     field(NON, DBF_ULONG) {
       
  6394         special(SPC_NOMOD)
       
  6395         interest(1)
       
  6396         promptgroup("42 - Input H-N")
       
  6397         initial("1")
       
  6398         prompt("Max. elements in N")
       
  6399     }
       
  6400     field(NOO, DBF_ULONG) {
       
  6401         initial("1")
       
  6402         prompt("Max. elements in O")
       
  6403         interest(1)
       
  6404         special(SPC_NOMOD)
       
  6405         promptgroup("43 - Input O-U")
       
  6406     }
       
  6407     field(NOP, DBF_ULONG) {
       
  6408         promptgroup("43 - Input O-U")
       
  6409         special(SPC_NOMOD)
       
  6410         interest(1)
       
  6411         prompt("Max. elements in P")
       
  6412         initial("1")
       
  6413     }
       
  6414     field(NOQ, DBF_ULONG) {
       
  6415         special(SPC_NOMOD)
       
  6416         interest(1)
       
  6417         promptgroup("43 - Input O-U")
       
  6418         initial("1")
       
  6419         prompt("Max. elements in Q")
       
  6420     }
       
  6421     field(NOR, DBF_ULONG) {
       
  6422         initial("1")
       
  6423         prompt("Max. elements in R")
       
  6424         interest(1)
       
  6425         special(SPC_NOMOD)
       
  6426         promptgroup("43 - Input O-U")
       
  6427     }
       
  6428     field(NOS, DBF_ULONG) {
       
  6429         special(SPC_NOMOD)
       
  6430         interest(1)
       
  6431         promptgroup("43 - Input O-U")
       
  6432         initial("1")
       
  6433         prompt("Max. elements in S")
       
  6434     }
       
  6435     field(NOT, DBF_ULONG) {
       
  6436         promptgroup("43 - Input O-U")
       
  6437         interest(1)
       
  6438         special(SPC_NOMOD)
       
  6439         prompt("Max. elements in T")
       
  6440         initial("1")
       
  6441     }
       
  6442     field(NOU, DBF_ULONG) {
       
  6443         prompt("Max. elements in U")
       
  6444         initial("1")
       
  6445         promptgroup("43 - Input O-U")
       
  6446         special(SPC_NOMOD)
       
  6447         interest(1)
       
  6448     }
       
  6449     field(NEA, DBF_ULONG) {
       
  6450         special(SPC_NOMOD)
       
  6451         interest(3)
       
  6452         prompt("Num. elements in A")
       
  6453         initial("1")
       
  6454     }
       
  6455     field(NEB, DBF_ULONG) {
       
  6456         special(SPC_NOMOD)
       
  6457         interest(3)
       
  6458         initial("1")
       
  6459         prompt("Num. elements in B")
       
  6460     }
       
  6461     field(NEC, DBF_ULONG) {
       
  6462         interest(3)
       
  6463         special(SPC_NOMOD)
       
  6464         initial("1")
       
  6465         prompt("Num. elements in C")
       
  6466     }
       
  6467     field(NED, DBF_ULONG) {
       
  6468         initial("1")
       
  6469         prompt("Num. elements in D")
       
  6470         special(SPC_NOMOD)
       
  6471         interest(3)
       
  6472     }
       
  6473     field(NEE, DBF_ULONG) {
       
  6474         initial("1")
       
  6475         prompt("Num. elements in E")
       
  6476         special(SPC_NOMOD)
       
  6477         interest(3)
       
  6478     }
       
  6479     field(NEF, DBF_ULONG) {
       
  6480         interest(3)
       
  6481         special(SPC_NOMOD)
       
  6482         initial("1")
       
  6483         prompt("Num. elements in F")
       
  6484     }
       
  6485     field(NEG, DBF_ULONG) {
       
  6486         initial("1")
       
  6487         prompt("Num. elements in G")
       
  6488         special(SPC_NOMOD)
       
  6489         interest(3)
       
  6490     }
       
  6491     field(NEH, DBF_ULONG) {
       
  6492         initial("1")
       
  6493         prompt("Num. elements in H")
       
  6494         interest(3)
       
  6495         special(SPC_NOMOD)
       
  6496     }
       
  6497     field(NEI, DBF_ULONG) {
       
  6498         initial("1")
       
  6499         prompt("Num. elements in I")
       
  6500         special(SPC_NOMOD)
       
  6501         interest(3)
       
  6502     }
       
  6503     field(NEJ, DBF_ULONG) {
       
  6504         interest(3)
       
  6505         special(SPC_NOMOD)
       
  6506         prompt("Num. elements in J")
       
  6507         initial("1")
       
  6508     }
       
  6509     field(NEK, DBF_ULONG) {
       
  6510         interest(3)
       
  6511         special(SPC_NOMOD)
       
  6512         initial("1")
       
  6513         prompt("Num. elements in K")
       
  6514     }
       
  6515     field(NEL, DBF_ULONG) {
       
  6516         initial("1")
       
  6517         prompt("Num. elements in L")
       
  6518         interest(3)
       
  6519         special(SPC_NOMOD)
       
  6520     }
       
  6521     field(NEM, DBF_ULONG) {
       
  6522         special(SPC_NOMOD)
       
  6523         interest(3)
       
  6524         initial("1")
       
  6525         prompt("Num. elements in M")
       
  6526     }
       
  6527     field(NEN, DBF_ULONG) {
       
  6528         interest(3)
       
  6529         special(SPC_NOMOD)
       
  6530         initial("1")
       
  6531         prompt("Num. elements in N")
       
  6532     }
       
  6533     field(NEO, DBF_ULONG) {
       
  6534         initial("1")
       
  6535         prompt("Num. elements in O")
       
  6536         special(SPC_NOMOD)
       
  6537         interest(3)
       
  6538     }
       
  6539     field(NEP, DBF_ULONG) {
       
  6540         interest(3)
       
  6541         special(SPC_NOMOD)
       
  6542         initial("1")
       
  6543         prompt("Num. elements in P")
       
  6544     }
       
  6545     field(NEQ, DBF_ULONG) {
       
  6546         interest(3)
       
  6547         special(SPC_NOMOD)
       
  6548         initial("1")
       
  6549         prompt("Num. elements in Q")
       
  6550     }
       
  6551     field(NER, DBF_ULONG) {
       
  6552         prompt("Num. elements in R")
       
  6553         initial("1")
       
  6554         interest(3)
       
  6555         special(SPC_NOMOD)
       
  6556     }
       
  6557     field(NES, DBF_ULONG) {
       
  6558         interest(3)
       
  6559         special(SPC_NOMOD)
       
  6560         prompt("Num. elements in S")
       
  6561         initial("1")
       
  6562     }
       
  6563     field(NET, DBF_ULONG) {
       
  6564         prompt("Num. elements in T")
       
  6565         initial("1")
       
  6566         special(SPC_NOMOD)
       
  6567         interest(3)
       
  6568     }
       
  6569     field(NEU, DBF_ULONG) {
       
  6570         prompt("Num. elements in U")
       
  6571         initial("1")
       
  6572         special(SPC_NOMOD)
       
  6573         interest(3)
       
  6574     }
       
  6575     field(OUTA, DBF_OUTLINK) {
       
  6576         promptgroup("51 - Output A-G")
       
  6577         interest(1)
       
  6578         prompt("Output Link A")
       
  6579     }
       
  6580     field(OUTB, DBF_OUTLINK) {
       
  6581         interest(1)
       
  6582         promptgroup("51 - Output A-G")
       
  6583         prompt("Output Link B")
       
  6584     }
       
  6585     field(OUTC, DBF_OUTLINK) {
       
  6586         promptgroup("51 - Output A-G")
       
  6587         interest(1)
       
  6588         prompt("Output Link C")
       
  6589     }
       
  6590     field(OUTD, DBF_OUTLINK) {
       
  6591         promptgroup("51 - Output A-G")
       
  6592         interest(1)
       
  6593         prompt("Output Link D")
       
  6594     }
       
  6595     field(OUTE, DBF_OUTLINK) {
       
  6596         prompt("Output Link E")
       
  6597         promptgroup("51 - Output A-G")
       
  6598         interest(1)
       
  6599     }
       
  6600     field(OUTF, DBF_OUTLINK) {
       
  6601         prompt("Output Link F")
       
  6602         interest(1)
       
  6603         promptgroup("51 - Output A-G")
       
  6604     }
       
  6605     field(OUTG, DBF_OUTLINK) {
       
  6606         promptgroup("51 - Output A-G")
       
  6607         interest(1)
       
  6608         prompt("Output Link G")
       
  6609     }
       
  6610     field(OUTH, DBF_OUTLINK) {
       
  6611         interest(1)
       
  6612         promptgroup("52 - Output H-N")
       
  6613         prompt("Output Link H")
       
  6614     }
       
  6615     field(OUTI, DBF_OUTLINK) {
       
  6616         prompt("Output Link I")
       
  6617         promptgroup("52 - Output H-N")
       
  6618         interest(1)
       
  6619     }
       
  6620     field(OUTJ, DBF_OUTLINK) {
       
  6621         prompt("Output Link J")
       
  6622         promptgroup("52 - Output H-N")
       
  6623         interest(1)
       
  6624     }
       
  6625     field(OUTK, DBF_OUTLINK) {
       
  6626         prompt("Output Link K")
       
  6627         interest(1)
       
  6628         promptgroup("52 - Output H-N")
       
  6629     }
       
  6630     field(OUTL, DBF_OUTLINK) {
       
  6631         prompt("Output Link L")
       
  6632         promptgroup("52 - Output H-N")
       
  6633         interest(1)
       
  6634     }
       
  6635     field(OUTM, DBF_OUTLINK) {
       
  6636         prompt("Output Link M")
       
  6637         promptgroup("52 - Output H-N")
       
  6638         interest(1)
       
  6639     }
       
  6640     field(OUTN, DBF_OUTLINK) {
       
  6641         prompt("Output Link N")
       
  6642         promptgroup("52 - Output H-N")
       
  6643         interest(1)
       
  6644     }
       
  6645     field(OUTO, DBF_OUTLINK) {
       
  6646         prompt("Output Link O")
       
  6647         interest(1)
       
  6648         promptgroup("53 - Output O-U")
       
  6649     }
       
  6650     field(OUTP, DBF_OUTLINK) {
       
  6651         prompt("Output Link P")
       
  6652         promptgroup("53 - Output O-U")
       
  6653         interest(1)
       
  6654     }
       
  6655     field(OUTQ, DBF_OUTLINK) {
       
  6656         promptgroup("53 - Output O-U")
       
  6657         interest(1)
       
  6658         prompt("Output Link Q")
       
  6659     }
       
  6660     field(OUTR, DBF_OUTLINK) {
       
  6661         prompt("Output Link R")
       
  6662         interest(1)
       
  6663         promptgroup("53 - Output O-U")
       
  6664     }
       
  6665     field(OUTS, DBF_OUTLINK) {
       
  6666         prompt("Output Link S")
       
  6667         promptgroup("53 - Output O-U")
       
  6668         interest(1)
       
  6669     }
       
  6670     field(OUTT, DBF_OUTLINK) {
       
  6671         promptgroup("53 - Output O-U")
       
  6672         interest(1)
       
  6673         prompt("Output Link T")
       
  6674     }
       
  6675     field(OUTU, DBF_OUTLINK) {
       
  6676         prompt("Output Link U")
       
  6677         interest(1)
       
  6678         promptgroup("53 - Output O-U")
       
  6679     }
       
  6680     field(VALA, DBF_NOACCESS) {
       
  6681         interest(2)
       
  6682         special(SPC_DBADDR)
       
  6683         prompt("Output value A")
       
  6684         asl(ASL0)
       
  6685         extra("void *vala")
       
  6686     }
       
  6687     field(VALB, DBF_NOACCESS) {
       
  6688         special(SPC_DBADDR)
       
  6689         interest(2)
       
  6690         prompt("Output value B")
       
  6691         extra("void *valb")
       
  6692         asl(ASL0)
       
  6693     }
       
  6694     field(VALC, DBF_NOACCESS) {
       
  6695         extra("void *valc")
       
  6696         asl(ASL0)
       
  6697         prompt("Output value C")
       
  6698         special(SPC_DBADDR)
       
  6699         interest(2)
       
  6700     }
       
  6701     field(VALD, DBF_NOACCESS) {
       
  6702         interest(2)
       
  6703         special(SPC_DBADDR)
       
  6704         asl(ASL0)
       
  6705         extra("void *vald")
       
  6706         prompt("Output value D")
       
  6707     }
       
  6708     field(VALE, DBF_NOACCESS) {
       
  6709         asl(ASL0)
       
  6710         extra("void *vale")
       
  6711         prompt("Output value E")
       
  6712         interest(2)
       
  6713         special(SPC_DBADDR)
       
  6714     }
       
  6715     field(VALF, DBF_NOACCESS) {
       
  6716         interest(2)
       
  6717         special(SPC_DBADDR)
       
  6718         prompt("Output value F")
       
  6719         asl(ASL0)
       
  6720         extra("void *valf")
       
  6721     }
       
  6722     field(VALG, DBF_NOACCESS) {
       
  6723         special(SPC_DBADDR)
       
  6724         interest(2)
       
  6725         extra("void *valg")
       
  6726         asl(ASL0)
       
  6727         prompt("Output value G")
       
  6728     }
       
  6729     field(VALH, DBF_NOACCESS) {
       
  6730         asl(ASL0)
       
  6731         extra("void *valh")
       
  6732         prompt("Output value H")
       
  6733         interest(2)
       
  6734         special(SPC_DBADDR)
       
  6735     }
       
  6736     field(VALI, DBF_NOACCESS) {
       
  6737         prompt("Output value I")
       
  6738         extra("void *vali")
       
  6739         asl(ASL0)
       
  6740         special(SPC_DBADDR)
       
  6741         interest(2)
       
  6742     }
       
  6743     field(VALJ, DBF_NOACCESS) {
       
  6744         extra("void *valj")
       
  6745         asl(ASL0)
       
  6746         prompt("Output value J")
       
  6747         special(SPC_DBADDR)
       
  6748         interest(2)
       
  6749     }
       
  6750     field(VALK, DBF_NOACCESS) {
       
  6751         prompt("Output value K")
       
  6752         asl(ASL0)
       
  6753         extra("void *valk")
       
  6754         interest(2)
       
  6755         special(SPC_DBADDR)
       
  6756     }
       
  6757     field(VALL, DBF_NOACCESS) {
       
  6758         asl(ASL0)
       
  6759         extra("void *vall")
       
  6760         prompt("Output value L")
       
  6761         interest(2)
       
  6762         special(SPC_DBADDR)
       
  6763     }
       
  6764     field(VALM, DBF_NOACCESS) {
       
  6765         interest(2)
       
  6766         special(SPC_DBADDR)
       
  6767         asl(ASL0)
       
  6768         extra("void *valm")
       
  6769         prompt("Output value M")
       
  6770     }
       
  6771     field(VALN, DBF_NOACCESS) {
       
  6772         asl(ASL0)
       
  6773         extra("void *valn")
       
  6774         prompt("Output value N")
       
  6775         interest(2)
       
  6776         special(SPC_DBADDR)
       
  6777     }
       
  6778     field(VALO, DBF_NOACCESS) {
       
  6779         special(SPC_DBADDR)
       
  6780         interest(2)
       
  6781         extra("void *valo")
       
  6782         asl(ASL0)
       
  6783         prompt("Output value O")
       
  6784     }
       
  6785     field(VALP, DBF_NOACCESS) {
       
  6786         prompt("Output value P")
       
  6787         extra("void *valp")
       
  6788         asl(ASL0)
       
  6789         special(SPC_DBADDR)
       
  6790         interest(2)
       
  6791     }
       
  6792     field(VALQ, DBF_NOACCESS) {
       
  6793         interest(2)
       
  6794         special(SPC_DBADDR)
       
  6795         prompt("Output value Q")
       
  6796         asl(ASL0)
       
  6797         extra("void *valq")
       
  6798     }
       
  6799     field(VALR, DBF_NOACCESS) {
       
  6800         prompt("Output value R")
       
  6801         asl(ASL0)
       
  6802         extra("void *valr")
       
  6803         interest(2)
       
  6804         special(SPC_DBADDR)
       
  6805     }
       
  6806     field(VALS, DBF_NOACCESS) {
       
  6807         special(SPC_DBADDR)
       
  6808         interest(2)
       
  6809         prompt("Output value S")
       
  6810         extra("void *vals")
       
  6811         asl(ASL0)
       
  6812     }
       
  6813     field(VALT, DBF_NOACCESS) {
       
  6814         extra("void *valt")
       
  6815         asl(ASL0)
       
  6816         prompt("Output value T")
       
  6817         special(SPC_DBADDR)
       
  6818         interest(2)
       
  6819     }
       
  6820     field(VALU, DBF_NOACCESS) {
       
  6821         interest(2)
       
  6822         special(SPC_DBADDR)
       
  6823         prompt("Output value U")
       
  6824         asl(ASL0)
       
  6825         extra("void *valu")
       
  6826     }
       
  6827     field(OVLA, DBF_NOACCESS) {
       
  6828         special(SPC_NOMOD)
       
  6829         interest(4)
       
  6830         extra("void *ovla")
       
  6831         asl(ASL0)
       
  6832         prompt("Old Output A")
       
  6833     }
       
  6834     field(OVLB, DBF_NOACCESS) {
       
  6835         special(SPC_NOMOD)
       
  6836         interest(4)
       
  6837         extra("void *ovlb")
       
  6838         asl(ASL0)
       
  6839         prompt("Old Output B")
       
  6840     }
       
  6841     field(OVLC, DBF_NOACCESS) {
       
  6842         extra("void *ovlc")
       
  6843         asl(ASL0)
       
  6844         prompt("Old Output C")
       
  6845         special(SPC_NOMOD)
       
  6846         interest(4)
       
  6847     }
       
  6848     field(OVLD, DBF_NOACCESS) {
       
  6849         interest(4)
       
  6850         special(SPC_NOMOD)
       
  6851         prompt("Old Output D")
       
  6852         asl(ASL0)
       
  6853         extra("void *ovld")
       
  6854     }
       
  6855     field(OVLE, DBF_NOACCESS) {
       
  6856         prompt("Old Output E")
       
  6857         asl(ASL0)
       
  6858         extra("void *ovle")
       
  6859         interest(4)
       
  6860         special(SPC_NOMOD)
       
  6861     }
       
  6862     field(OVLF, DBF_NOACCESS) {
       
  6863         extra("void *ovlf")
       
  6864         asl(ASL0)
       
  6865         prompt("Old Output F")
       
  6866         special(SPC_NOMOD)
       
  6867         interest(4)
       
  6868     }
       
  6869     field(OVLG, DBF_NOACCESS) {
       
  6870         interest(4)
       
  6871         special(SPC_NOMOD)
       
  6872         prompt("Old Output G")
       
  6873         asl(ASL0)
       
  6874         extra("void *ovlg")
       
  6875     }
       
  6876     field(OVLH, DBF_NOACCESS) {
       
  6877         prompt("Old Output H")
       
  6878         extra("void *ovlh")
       
  6879         asl(ASL0)
       
  6880         special(SPC_NOMOD)
       
  6881         interest(4)
       
  6882     }
       
  6883     field(OVLI, DBF_NOACCESS) {
       
  6884         extra("void *ovli")
       
  6885         asl(ASL0)
       
  6886         prompt("Old Output I")
       
  6887         special(SPC_NOMOD)
       
  6888         interest(4)
       
  6889     }
       
  6890     field(OVLJ, DBF_NOACCESS) {
       
  6891         interest(4)
       
  6892         special(SPC_NOMOD)
       
  6893         prompt("Old Output J")
       
  6894         asl(ASL0)
       
  6895         extra("void *ovlj")
       
  6896     }
       
  6897     field(OVLK, DBF_NOACCESS) {
       
  6898         prompt("Old Output K")
       
  6899         asl(ASL0)
       
  6900         extra("void *ovlk")
       
  6901         interest(4)
       
  6902         special(SPC_NOMOD)
       
  6903     }
       
  6904     field(OVLL, DBF_NOACCESS) {
       
  6905         prompt("Old Output L")
       
  6906         asl(ASL0)
       
  6907         extra("void *ovll")
       
  6908         interest(4)
       
  6909         special(SPC_NOMOD)
       
  6910     }
       
  6911     field(OVLM, DBF_NOACCESS) {
       
  6912         asl(ASL0)
       
  6913         extra("void *ovlm")
       
  6914         prompt("Old Output M")
       
  6915         interest(4)
       
  6916         special(SPC_NOMOD)
       
  6917     }
       
  6918     field(OVLN, DBF_NOACCESS) {
       
  6919         extra("void *ovln")
       
  6920         asl(ASL0)
       
  6921         prompt("Old Output N")
       
  6922         special(SPC_NOMOD)
       
  6923         interest(4)
       
  6924     }
       
  6925     field(OVLO, DBF_NOACCESS) {
       
  6926         special(SPC_NOMOD)
       
  6927         interest(4)
       
  6928         prompt("Old Output O")
       
  6929         extra("void *ovlo")
       
  6930         asl(ASL0)
       
  6931     }
       
  6932     field(OVLP, DBF_NOACCESS) {
       
  6933         interest(4)
       
  6934         special(SPC_NOMOD)
       
  6935         asl(ASL0)
       
  6936         extra("void *ovlp")
       
  6937         prompt("Old Output P")
       
  6938     }
       
  6939     field(OVLQ, DBF_NOACCESS) {
       
  6940         interest(4)
       
  6941         special(SPC_NOMOD)
       
  6942         prompt("Old Output Q")
       
  6943         asl(ASL0)
       
  6944         extra("void *ovlq")
       
  6945     }
       
  6946     field(OVLR, DBF_NOACCESS) {
       
  6947         prompt("Old Output R")
       
  6948         asl(ASL0)
       
  6949         extra("void *ovlr")
       
  6950         interest(4)
       
  6951         special(SPC_NOMOD)
       
  6952     }
       
  6953     field(OVLS, DBF_NOACCESS) {
       
  6954         special(SPC_NOMOD)
       
  6955         interest(4)
       
  6956         extra("void *ovls")
       
  6957         asl(ASL0)
       
  6958         prompt("Old Output S")
       
  6959     }
       
  6960     field(OVLT, DBF_NOACCESS) {
       
  6961         special(SPC_NOMOD)
       
  6962         interest(4)
       
  6963         extra("void *ovlt")
       
  6964         asl(ASL0)
       
  6965         prompt("Old Output T")
       
  6966     }
       
  6967     field(OVLU, DBF_NOACCESS) {
       
  6968         prompt("Old Output U")
       
  6969         asl(ASL0)
       
  6970         extra("void *ovlu")
       
  6971         interest(4)
       
  6972         special(SPC_NOMOD)
       
  6973     }
       
  6974     field(FTVA, DBF_MENU) {
       
  6975         initial("DOUBLE")
       
  6976         prompt("Type of VALA")
       
  6977         menu(menuFtype)
       
  6978         interest(1)
       
  6979         special(SPC_NOMOD)
       
  6980         promptgroup("51 - Output A-G")
       
  6981     }
       
  6982     field(FTVB, DBF_MENU) {
       
  6983         interest(1)
       
  6984         menu(menuFtype)
       
  6985         special(SPC_NOMOD)
       
  6986         promptgroup("51 - Output A-G")
       
  6987         initial("DOUBLE")
       
  6988         prompt("Type of VALB")
       
  6989     }
       
  6990     field(FTVC, DBF_MENU) {
       
  6991         prompt("Type of VALC")
       
  6992         initial("DOUBLE")
       
  6993         promptgroup("51 - Output A-G")
       
  6994         menu(menuFtype)
       
  6995         interest(1)
       
  6996         special(SPC_NOMOD)
       
  6997     }
       
  6998     field(FTVD, DBF_MENU) {
       
  6999         prompt("Type of VALD")
       
  7000         initial("DOUBLE")
       
  7001         promptgroup("51 - Output A-G")
       
  7002         menu(menuFtype)
       
  7003         interest(1)
       
  7004         special(SPC_NOMOD)
       
  7005     }
       
  7006     field(FTVE, DBF_MENU) {
       
  7007         prompt("Type of VALE")
       
  7008         initial("DOUBLE")
       
  7009         promptgroup("51 - Output A-G")
       
  7010         interest(1)
       
  7011         menu(menuFtype)
       
  7012         special(SPC_NOMOD)
       
  7013     }
       
  7014     field(FTVF, DBF_MENU) {
       
  7015         initial("DOUBLE")
       
  7016         prompt("Type of VALF")
       
  7017         menu(menuFtype)
       
  7018         interest(1)
       
  7019         special(SPC_NOMOD)
       
  7020         promptgroup("51 - Output A-G")
       
  7021     }
       
  7022     field(FTVG, DBF_MENU) {
       
  7023         initial("DOUBLE")
       
  7024         prompt("Type of VALG")
       
  7025         menu(menuFtype)
       
  7026         interest(1)
       
  7027         special(SPC_NOMOD)
       
  7028         promptgroup("51 - Output A-G")
       
  7029     }
       
  7030     field(FTVH, DBF_MENU) {
       
  7031         initial("DOUBLE")
       
  7032         prompt("Type of VALH")
       
  7033         special(SPC_NOMOD)
       
  7034         menu(menuFtype)
       
  7035         interest(1)
       
  7036         promptgroup("52 - Output H-N")
       
  7037     }
       
  7038     field(FTVI, DBF_MENU) {
       
  7039         promptgroup("52 - Output H-N")
       
  7040         special(SPC_NOMOD)
       
  7041         menu(menuFtype)
       
  7042         interest(1)
       
  7043         prompt("Type of VALI")
       
  7044         initial("DOUBLE")
       
  7045     }
       
  7046     field(FTVJ, DBF_MENU) {
       
  7047         prompt("Type of VALJ")
       
  7048         initial("DOUBLE")
       
  7049         promptgroup("52 - Output H-N")
       
  7050         special(SPC_NOMOD)
       
  7051         interest(1)
       
  7052         menu(menuFtype)
       
  7053     }
       
  7054     field(FTVK, DBF_MENU) {
       
  7055         promptgroup("52 - Output H-N")
       
  7056         special(SPC_NOMOD)
       
  7057         interest(1)
       
  7058         menu(menuFtype)
       
  7059         prompt("Type of VALK")
       
  7060         initial("DOUBLE")
       
  7061     }
       
  7062     field(FTVL, DBF_MENU) {
       
  7063         promptgroup("52 - Output H-N")
       
  7064         special(SPC_NOMOD)
       
  7065         menu(menuFtype)
       
  7066         interest(1)
       
  7067         prompt("Type of VALL")
       
  7068         initial("DOUBLE")
       
  7069     }
       
  7070     field(FTVM, DBF_MENU) {
       
  7071         promptgroup("52 - Output H-N")
       
  7072         special(SPC_NOMOD)
       
  7073         menu(menuFtype)
       
  7074         interest(1)
       
  7075         prompt("Type of VALM")
       
  7076         initial("DOUBLE")
       
  7077     }
       
  7078     field(FTVN, DBF_MENU) {
       
  7079         promptgroup("52 - Output H-N")
       
  7080         menu(menuFtype)
       
  7081         interest(1)
       
  7082         special(SPC_NOMOD)
       
  7083         prompt("Type of VALN")
       
  7084         initial("DOUBLE")
       
  7085     }
       
  7086     field(FTVO, DBF_MENU) {
       
  7087         promptgroup("53 - Output O-U")
       
  7088         interest(1)
       
  7089         menu(menuFtype)
       
  7090         special(SPC_NOMOD)
       
  7091         prompt("Type of VALO")
       
  7092         initial("DOUBLE")
       
  7093     }
       
  7094     field(FTVP, DBF_MENU) {
       
  7095         promptgroup("53 - Output O-U")
       
  7096         special(SPC_NOMOD)
       
  7097         interest(1)
       
  7098         menu(menuFtype)
       
  7099         prompt("Type of VALP")
       
  7100         initial("DOUBLE")
       
  7101     }
       
  7102     field(FTVQ, DBF_MENU) {
       
  7103         promptgroup("53 - Output O-U")
       
  7104         special(SPC_NOMOD)
       
  7105         interest(1)
       
  7106         menu(menuFtype)
       
  7107         prompt("Type of VALQ")
       
  7108         initial("DOUBLE")
       
  7109     }
       
  7110     field(FTVR, DBF_MENU) {
       
  7111         menu(menuFtype)
       
  7112         interest(1)
       
  7113         special(SPC_NOMOD)
       
  7114         promptgroup("53 - Output O-U")
       
  7115         initial("DOUBLE")
       
  7116         prompt("Type of VALR")
       
  7117     }
       
  7118     field(FTVS, DBF_MENU) {
       
  7119         interest(1)
       
  7120         menu(menuFtype)
       
  7121         special(SPC_NOMOD)
       
  7122         promptgroup("53 - Output O-U")
       
  7123         initial("DOUBLE")
       
  7124         prompt("Type of VALS")
       
  7125     }
       
  7126     field(FTVT, DBF_MENU) {
       
  7127         interest(1)
       
  7128         menu(menuFtype)
       
  7129         special(SPC_NOMOD)
       
  7130         promptgroup("53 - Output O-U")
       
  7131         initial("DOUBLE")
       
  7132         prompt("Type of VALT")
       
  7133     }
       
  7134     field(FTVU, DBF_MENU) {
       
  7135         initial("DOUBLE")
       
  7136         prompt("Type of VALU")
       
  7137         special(SPC_NOMOD)
       
  7138         menu(menuFtype)
       
  7139         interest(1)
       
  7140         promptgroup("53 - Output O-U")
       
  7141     }
       
  7142     field(NOVA, DBF_ULONG) {
       
  7143         prompt("Max. elements in VALA")
       
  7144         initial("1")
       
  7145         promptgroup("51 - Output A-G")
       
  7146         special(SPC_NOMOD)
       
  7147         interest(1)
       
  7148     }
       
  7149     field(NOVB, DBF_ULONG) {
       
  7150         prompt("Max. elements in VALB")
       
  7151         initial("1")
       
  7152         promptgroup("51 - Output A-G")
       
  7153         interest(1)
       
  7154         special(SPC_NOMOD)
       
  7155     }
       
  7156     field(NOVC, DBF_ULONG) {
       
  7157         prompt("Max. elements in VALC")
       
  7158         initial("1")
       
  7159         promptgroup("51 - Output A-G")
       
  7160         interest(1)
       
  7161         special(SPC_NOMOD)
       
  7162     }
       
  7163     field(NOVD, DBF_ULONG) {
       
  7164         promptgroup("51 - Output A-G")
       
  7165         interest(1)
       
  7166         special(SPC_NOMOD)
       
  7167         prompt("Max. elements in VALD")
       
  7168         initial("1")
       
  7169     }
       
  7170     field(NOVE, DBF_ULONG) {
       
  7171         prompt("Max. elements in VALE")
       
  7172         initial("1")
       
  7173         promptgroup("51 - Output A-G")
       
  7174         interest(1)
       
  7175         special(SPC_NOMOD)
       
  7176     }
       
  7177     field(NOVF, DBF_ULONG) {
       
  7178         initial("1")
       
  7179         prompt("Max. elements in VALF")
       
  7180         special(SPC_NOMOD)
       
  7181         interest(1)
       
  7182         promptgroup("51 - Output A-G")
       
  7183     }
       
  7184     field(NOVG, DBF_ULONG) {
       
  7185         promptgroup("51 - Output A-G")
       
  7186         special(SPC_NOMOD)
       
  7187         interest(1)
       
  7188         prompt("Max. elements in VALG")
       
  7189         initial("1")
       
  7190     }
       
  7191     field(NOVH, DBF_ULONG) {
       
  7192         special(SPC_NOMOD)
       
  7193         interest(1)
       
  7194         promptgroup("52 - Output H-N")
       
  7195         initial("1")
       
  7196         prompt("Max. elements in VAlH")
       
  7197     }
       
  7198     field(NOVI, DBF_ULONG) {
       
  7199         special(SPC_NOMOD)
       
  7200         interest(1)
       
  7201         promptgroup("52 - Output H-N")
       
  7202         initial("1")
       
  7203         prompt("Max. elements in VALI")
       
  7204     }
       
  7205     field(NOVJ, DBF_ULONG) {
       
  7206         prompt("Max. elements in VALJ")
       
  7207         initial("1")
       
  7208         promptgroup("52 - Output H-N")
       
  7209         interest(1)
       
  7210         special(SPC_NOMOD)
       
  7211     }
       
  7212     field(NOVK, DBF_ULONG) {
       
  7213         promptgroup("52 - Output H-N")
       
  7214         special(SPC_NOMOD)
       
  7215         interest(1)
       
  7216         prompt("Max. elements in VALK")
       
  7217         initial("1")
       
  7218     }
       
  7219     field(NOVL, DBF_ULONG) {
       
  7220         initial("1")
       
  7221         prompt("Max. elements in VALL")
       
  7222         interest(1)
       
  7223         special(SPC_NOMOD)
       
  7224         promptgroup("52 - Output H-N")
       
  7225     }
       
  7226     field(NOVM, DBF_ULONG) {
       
  7227         prompt("Max. elements in VALM")
       
  7228         initial("1")
       
  7229         promptgroup("52 - Output H-N")
       
  7230         interest(1)
       
  7231         special(SPC_NOMOD)
       
  7232     }
       
  7233     field(NOVN, DBF_ULONG) {
       
  7234         initial("1")
       
  7235         prompt("Max. elements in VALN")
       
  7236         interest(1)
       
  7237         special(SPC_NOMOD)
       
  7238         promptgroup("52 - Output H-N")
       
  7239     }
       
  7240     field(NOVO, DBF_ULONG) {
       
  7241         prompt("Max. elements in VALO")
       
  7242         initial("1")
       
  7243         promptgroup("53 - Output O-U")
       
  7244         special(SPC_NOMOD)
       
  7245         interest(1)
       
  7246     }
       
  7247     field(NOVP, DBF_ULONG) {
       
  7248         interest(1)
       
  7249         special(SPC_NOMOD)
       
  7250         promptgroup("53 - Output O-U")
       
  7251         initial("1")
       
  7252         prompt("Max. elements in VALP")
       
  7253     }
       
  7254     field(NOVQ, DBF_ULONG) {
       
  7255         promptgroup("53 - Output O-U")
       
  7256         special(SPC_NOMOD)
       
  7257         interest(1)
       
  7258         prompt("Max. elements in VALQ")
       
  7259         initial("1")
       
  7260     }
       
  7261     field(NOVR, DBF_ULONG) {
       
  7262         initial("1")
       
  7263         prompt("Max. elements in VALR")
       
  7264         interest(1)
       
  7265         special(SPC_NOMOD)
       
  7266         promptgroup("53 - Output O-U")
       
  7267     }
       
  7268     field(NOVS, DBF_ULONG) {
       
  7269         prompt("Max. elements in VALS")
       
  7270         initial("1")
       
  7271         promptgroup("53 - Output O-U")
       
  7272         special(SPC_NOMOD)
       
  7273         interest(1)
       
  7274     }
       
  7275     field(NOVT, DBF_ULONG) {
       
  7276         promptgroup("53 - Output O-U")
       
  7277         special(SPC_NOMOD)
       
  7278         interest(1)
       
  7279         prompt("Max. elements in VALT")
       
  7280         initial("1")
       
  7281     }
       
  7282     field(NOVU, DBF_ULONG) {
       
  7283         interest(1)
       
  7284         special(SPC_NOMOD)
       
  7285         promptgroup("53 - Output O-U")
       
  7286         initial("1")
       
  7287         prompt("Max. elements in VALU")
       
  7288     }
       
  7289     field(NEVA, DBF_ULONG) {
       
  7290         prompt("Num. elements in VALA")
       
  7291         initial("1")
       
  7292         special(SPC_NOMOD)
       
  7293         interest(3)
       
  7294     }
       
  7295     field(NEVB, DBF_ULONG) {
       
  7296         prompt("Num. elements in VALB")
       
  7297         initial("1")
       
  7298         special(SPC_NOMOD)
       
  7299         interest(3)
       
  7300     }
       
  7301     field(NEVC, DBF_ULONG) {
       
  7302         special(SPC_NOMOD)
       
  7303         interest(3)
       
  7304         initial("1")
       
  7305         prompt("Num. elements in VALC")
       
  7306     }
       
  7307     field(NEVD, DBF_ULONG) {
       
  7308         interest(3)
       
  7309         special(SPC_NOMOD)
       
  7310         prompt("Num. elements in VALD")
       
  7311         initial("1")
       
  7312     }
       
  7313     field(NEVE, DBF_ULONG) {
       
  7314         special(SPC_NOMOD)
       
  7315         interest(3)
       
  7316         prompt("Num. elements in VALE")
       
  7317         initial("1")
       
  7318     }
       
  7319     field(NEVF, DBF_ULONG) {
       
  7320         special(SPC_NOMOD)
       
  7321         interest(3)
       
  7322         initial("1")
       
  7323         prompt("Num. elements in VALF")
       
  7324     }
       
  7325     field(NEVG, DBF_ULONG) {
       
  7326         special(SPC_NOMOD)
       
  7327         interest(3)
       
  7328         initial("1")
       
  7329         prompt("Num. elements in VALG")
       
  7330     }
       
  7331     field(NEVH, DBF_ULONG) {
       
  7332         special(SPC_NOMOD)
       
  7333         interest(3)
       
  7334         prompt("Num. elements in VAlH")
       
  7335         initial("1")
       
  7336     }
       
  7337     field(NEVI, DBF_ULONG) {
       
  7338         initial("1")
       
  7339         prompt("Num. elements in VALI")
       
  7340         interest(3)
       
  7341         special(SPC_NOMOD)
       
  7342     }
       
  7343     field(NEVJ, DBF_ULONG) {
       
  7344         interest(3)
       
  7345         special(SPC_NOMOD)
       
  7346         prompt("Num. elements in VALJ")
       
  7347         initial("1")
       
  7348     }
       
  7349     field(NEVK, DBF_ULONG) {
       
  7350         interest(3)
       
  7351         special(SPC_NOMOD)
       
  7352         initial("1")
       
  7353         prompt("Num. elements in VALK")
       
  7354     }
       
  7355     field(NEVL, DBF_ULONG) {
       
  7356         special(SPC_NOMOD)
       
  7357         interest(3)
       
  7358         prompt("Num. elements in VALL")
       
  7359         initial("1")
       
  7360     }
       
  7361     field(NEVM, DBF_ULONG) {
       
  7362         prompt("Num. elements in VALM")
       
  7363         initial("1")
       
  7364         interest(3)
       
  7365         special(SPC_NOMOD)
       
  7366     }
       
  7367     field(NEVN, DBF_ULONG) {
       
  7368         prompt("Num. elements in VALN")
       
  7369         initial("1")
       
  7370         interest(3)
       
  7371         special(SPC_NOMOD)
       
  7372     }
       
  7373     field(NEVO, DBF_ULONG) {
       
  7374         interest(3)
       
  7375         special(SPC_NOMOD)
       
  7376         prompt("Num. elements in VALO")
       
  7377         initial("1")
       
  7378     }
       
  7379     field(NEVP, DBF_ULONG) {
       
  7380         prompt("Num. elements in VALP")
       
  7381         initial("1")
       
  7382         special(SPC_NOMOD)
       
  7383         interest(3)
       
  7384     }
       
  7385     field(NEVQ, DBF_ULONG) {
       
  7386         initial("1")
       
  7387         prompt("Num. elements in VALQ")
       
  7388         interest(3)
       
  7389         special(SPC_NOMOD)
       
  7390     }
       
  7391     field(NEVR, DBF_ULONG) {
       
  7392         interest(3)
       
  7393         special(SPC_NOMOD)
       
  7394         prompt("Num. elements in VALR")
       
  7395         initial("1")
       
  7396     }
       
  7397     field(NEVS, DBF_ULONG) {
       
  7398         prompt("Num. elements in VALS")
       
  7399         initial("1")
       
  7400         special(SPC_NOMOD)
       
  7401         interest(3)
       
  7402     }
       
  7403     field(NEVT, DBF_ULONG) {
       
  7404         initial("1")
       
  7405         prompt("Num. elements in VALT")
       
  7406         interest(3)
       
  7407         special(SPC_NOMOD)
       
  7408     }
       
  7409     field(NEVU, DBF_ULONG) {
       
  7410         initial("1")
       
  7411         prompt("Num. elements in VALU")
       
  7412         interest(3)
       
  7413         special(SPC_NOMOD)
       
  7414     }
       
  7415     field(ONVA, DBF_ULONG) {
       
  7416         interest(4)
       
  7417         special(SPC_NOMOD)
       
  7418         initial("1")
       
  7419         prompt("Num. elements in OVLA")
       
  7420     }
       
  7421     field(ONVB, DBF_ULONG) {
       
  7422         prompt("Num. elements in OVLB")
       
  7423         initial("1")
       
  7424         special(SPC_NOMOD)
       
  7425         interest(4)
       
  7426     }
       
  7427     field(ONVC, DBF_ULONG) {
       
  7428         interest(4)
       
  7429         special(SPC_NOMOD)
       
  7430         initial("1")
       
  7431         prompt("Num. elements in OVLC")
       
  7432     }
       
  7433     field(ONVD, DBF_ULONG) {
       
  7434         prompt("Num. elements in OVLD")
       
  7435         initial("1")
       
  7436         special(SPC_NOMOD)
       
  7437         interest(4)
       
  7438     }
       
  7439     field(ONVE, DBF_ULONG) {
       
  7440         initial("1")
       
  7441         prompt("Num. elements in OVLE")
       
  7442         interest(4)
       
  7443         special(SPC_NOMOD)
       
  7444     }
       
  7445     field(ONVF, DBF_ULONG) {
       
  7446         special(SPC_NOMOD)
       
  7447         interest(4)
       
  7448         prompt("Num. elements in OVLF")
       
  7449         initial("1")
       
  7450     }
       
  7451     field(ONVG, DBF_ULONG) {
       
  7452         interest(4)
       
  7453         special(SPC_NOMOD)
       
  7454         prompt("Num. elements in OVLG")
       
  7455         initial("1")
       
  7456     }
       
  7457     field(ONVH, DBF_ULONG) {
       
  7458         prompt("Num. elements in VAlH")
       
  7459         initial("1")
       
  7460         interest(4)
       
  7461         special(SPC_NOMOD)
       
  7462     }
       
  7463     field(ONVI, DBF_ULONG) {
       
  7464         initial("1")
       
  7465         prompt("Num. elements in OVLI")
       
  7466         interest(4)
       
  7467         special(SPC_NOMOD)
       
  7468     }
       
  7469     field(ONVJ, DBF_ULONG) {
       
  7470         initial("1")
       
  7471         prompt("Num. elements in OVLJ")
       
  7472         interest(4)
       
  7473         special(SPC_NOMOD)
       
  7474     }
       
  7475     field(ONVK, DBF_ULONG) {
       
  7476         interest(4)
       
  7477         special(SPC_NOMOD)
       
  7478         initial("1")
       
  7479         prompt("Num. elements in OVLK")
       
  7480     }
       
  7481     field(ONVL, DBF_ULONG) {
       
  7482         special(SPC_NOMOD)
       
  7483         interest(4)
       
  7484         prompt("Num. elements in OVLL")
       
  7485         initial("1")
       
  7486     }
       
  7487     field(ONVM, DBF_ULONG) {
       
  7488         special(SPC_NOMOD)
       
  7489         interest(4)
       
  7490         initial("1")
       
  7491         prompt("Num. elements in OVLM")
       
  7492     }
       
  7493     field(ONVN, DBF_ULONG) {
       
  7494         prompt("Num. elements in OVLN")
       
  7495         initial("1")
       
  7496         interest(4)
       
  7497         special(SPC_NOMOD)
       
  7498     }
       
  7499     field(ONVO, DBF_ULONG) {
       
  7500         prompt("Num. elements in OVLO")
       
  7501         initial("1")
       
  7502         special(SPC_NOMOD)
       
  7503         interest(4)
       
  7504     }
       
  7505     field(ONVP, DBF_ULONG) {
       
  7506         interest(4)
       
  7507         special(SPC_NOMOD)
       
  7508         initial("1")
       
  7509         prompt("Num. elements in OVLP")
       
  7510     }
       
  7511     field(ONVQ, DBF_ULONG) {
       
  7512         interest(4)
       
  7513         special(SPC_NOMOD)
       
  7514         initial("1")
       
  7515         prompt("Num. elements in OVLQ")
       
  7516     }
       
  7517     field(ONVR, DBF_ULONG) {
       
  7518         special(SPC_NOMOD)
       
  7519         interest(4)
       
  7520         initial("1")
       
  7521         prompt("Num. elements in OVLR")
       
  7522     }
       
  7523     field(ONVS, DBF_ULONG) {
       
  7524         special(SPC_NOMOD)
       
  7525         interest(4)
       
  7526         initial("1")
       
  7527         prompt("Num. elements in OVLS")
       
  7528     }
       
  7529     field(ONVT, DBF_ULONG) {
       
  7530         interest(4)
       
  7531         special(SPC_NOMOD)
       
  7532         initial("1")
       
  7533         prompt("Num. elements in OVLT")
       
  7534     }
       
  7535     field(ONVU, DBF_ULONG) {
       
  7536         interest(4)
       
  7537         special(SPC_NOMOD)
       
  7538         initial("1")
       
  7539         prompt("Num. elements in OVLU")
  8697     }
  7540     }
  8698 }
  7541 }
  8699 device(lsi, CONSTANT, devLsiSoft, "Soft Channel")
  7542 recordtype(mbbo) {
  8700 device(lsi, INST_IO, devLsiEnviron, "getenv")
       
  8701 recordtype(bo) {
       
  8702     %#include "epicsTypes.h"
  7543     %#include "epicsTypes.h"
  8703     %#include "link.h"
  7544     %#include "link.h"
  8704     %#include "epicsMutex.h"
  7545     %#include "epicsMutex.h"
  8705     %#include "ellLib.h"
  7546     %#include "ellLib.h"
  8706     %#include "epicsTime.h"
  7547     %#include "epicsTime.h"
  8707     %#include "callback.h"
  7548     %#include "callback.h"
  8708     field(NAME, DBF_STRING) {
  7549     field(NAME, DBF_STRING) {
  8709         prompt("Record Name")
  7550         prompt("Record Name")
  8710         special(SPC_NOMOD)
       
  8711         size(61)
  7551         size(61)
       
  7552         special(SPC_NOMOD)
  8712     }
  7553     }
  8713     field(DESC, DBF_STRING) {
  7554     field(DESC, DBF_STRING) {
       
  7555         promptgroup("10 - Common")
       
  7556         size(41)
  8714         prompt("Descriptor")
  7557         prompt("Descriptor")
  8715         promptgroup("10 - Common")
       
  8716         size(41)
       
  8717     }
  7558     }
  8718     field(ASG, DBF_STRING) {
  7559     field(ASG, DBF_STRING) {
       
  7560         promptgroup("10 - Common")
       
  7561         special(SPC_AS)
       
  7562         prompt("Access Security Group")
  8719         size(29)
  7563         size(29)
  8720         prompt("Access Security Group")
       
  8721         promptgroup("10 - Common")
       
  8722         special(SPC_AS)
       
  8723     }
  7564     }
  8724     field(SCAN, DBF_MENU) {
  7565     field(SCAN, DBF_MENU) {
  8725         promptgroup("20 - Scan")
  7566         prompt("Scan Mechanism")
       
  7567         promptgroup("20 - Scan")
       
  7568         menu(menuScan)
  8726         interest(1)
  7569         interest(1)
  8727         special(SPC_SCAN)
  7570         special(SPC_SCAN)
  8728         prompt("Scan Mechanism")
       
  8729         menu(menuScan)
       
  8730     }
  7571     }
  8731     field(PINI, DBF_MENU) {
  7572     field(PINI, DBF_MENU) {
       
  7573         prompt("Process at iocInit")
       
  7574         promptgroup("20 - Scan")
       
  7575         interest(1)
  8732         menu(menuPini)
  7576         menu(menuPini)
  8733         prompt("Process at iocInit")
       
  8734         promptgroup("20 - Scan")
       
  8735         interest(1)
       
  8736     }
  7577     }
  8737     field(PHAS, DBF_SHORT) {
  7578     field(PHAS, DBF_SHORT) {
       
  7579         prompt("Scan Phase")
  8738         special(SPC_SCAN)
  7580         special(SPC_SCAN)
  8739         interest(1)
  7581         interest(1)
  8740         promptgroup("20 - Scan")
  7582         promptgroup("20 - Scan")
  8741         prompt("Scan Phase")
       
  8742     }
  7583     }
  8743     field(EVNT, DBF_STRING) {
  7584     field(EVNT, DBF_STRING) {
       
  7585         promptgroup("20 - Scan")
       
  7586         interest(1)
  8744         special(SPC_SCAN)
  7587         special(SPC_SCAN)
  8745         interest(1)
       
  8746         promptgroup("20 - Scan")
       
  8747         prompt("Event Name")
  7588         prompt("Event Name")
  8748         size(40)
  7589         size(40)
  8749     }
  7590     }
  8750     field(TSE, DBF_SHORT) {
  7591     field(TSE, DBF_SHORT) {
  8751         promptgroup("20 - Scan")
  7592         promptgroup("20 - Scan")
  8752         interest(1)
  7593         interest(1)
  8753         prompt("Time Stamp Event")
  7594         prompt("Time Stamp Event")
  8754     }
  7595     }
  8755     field(TSEL, DBF_INLINK) {
  7596     field(TSEL, DBF_INLINK) {
  8756         interest(1)
       
  8757         promptgroup("20 - Scan")
       
  8758         prompt("Time Stamp Link")
  7597         prompt("Time Stamp Link")
       
  7598         interest(1)
       
  7599         promptgroup("20 - Scan")
  8759     }
  7600     }
  8760     field(DTYP, DBF_DEVICE) {
  7601     field(DTYP, DBF_DEVICE) {
       
  7602         interest(1)
       
  7603         promptgroup("10 - Common")
  8761         prompt("Device Type")
  7604         prompt("Device Type")
  8762         interest(1)
       
  8763         promptgroup("10 - Common")
       
  8764     }
  7605     }
  8765     field(DISV, DBF_SHORT) {
  7606     field(DISV, DBF_SHORT) {
  8766         initial("1")
       
  8767         prompt("Disable Value")
  7607         prompt("Disable Value")
       
  7608         initial("1")
  8768         promptgroup("20 - Scan")
  7609         promptgroup("20 - Scan")
  8769     }
  7610     }
  8770     field(DISA, DBF_SHORT) {
  7611     field(DISA, DBF_SHORT) {
  8771         prompt("Disable")
  7612         prompt("Disable")
  8772     }
  7613     }
  8775         promptgroup("20 - Scan")
  7616         promptgroup("20 - Scan")
  8776         prompt("Scanning Disable")
  7617         prompt("Scanning Disable")
  8777     }
  7618     }
  8778     field(MLOK, DBF_NOACCESS) {
  7619     field(MLOK, DBF_NOACCESS) {
  8779         extra("epicsMutexId        mlok")
  7620         extra("epicsMutexId        mlok")
  8780         special(SPC_NOMOD)
       
  8781         interest(4)
       
  8782         prompt("Monitor lock")
  7621         prompt("Monitor lock")
       
  7622         special(SPC_NOMOD)
       
  7623         interest(4)
  8783     }
  7624     }
  8784     field(MLIS, DBF_NOACCESS) {
  7625     field(MLIS, DBF_NOACCESS) {
  8785         interest(4)
  7626         interest(4)
  8786         special(SPC_NOMOD)
  7627         special(SPC_NOMOD)
  8787         prompt("Monitor List")
  7628         prompt("Monitor List")
  8788         extra("ELLLIST             mlis")
  7629         extra("ELLLIST             mlis")
  8789     }
  7630     }
  8790     field(BKLNK, DBF_NOACCESS) {
  7631     field(BKLNK, DBF_NOACCESS) {
  8791         special(SPC_NOMOD)
       
  8792         interest(4)
       
  8793         prompt("Backwards link tracking")
  7632         prompt("Backwards link tracking")
  8794         extra("ELLLIST             bklnk")
  7633         extra("ELLLIST             bklnk")
       
  7634         interest(4)
       
  7635         special(SPC_NOMOD)
  8795     }
  7636     }
  8796     field(DISP, DBF_UCHAR) {
  7637     field(DISP, DBF_UCHAR) {
  8797         prompt("Disable putField")
  7638         prompt("Disable putField")
  8798     }
  7639     }
  8799     field(PROC, DBF_UCHAR) {
  7640     field(PROC, DBF_UCHAR) {
  8800         pp(TRUE)
       
  8801         interest(3)
       
  8802         prompt("Force Processing")
  7641         prompt("Force Processing")
       
  7642         interest(3)
       
  7643         pp(TRUE)
  8803     }
  7644     }
  8804     field(STAT, DBF_MENU) {
  7645     field(STAT, DBF_MENU) {
  8805         special(SPC_NOMOD)
  7646         menu(menuAlarmStat)
       
  7647         special(SPC_NOMOD)
       
  7648         initial("UDF")
  8806         prompt("Alarm Status")
  7649         prompt("Alarm Status")
  8807         menu(menuAlarmStat)
       
  8808         initial("UDF")
       
  8809     }
  7650     }
  8810     field(SEVR, DBF_MENU) {
  7651     field(SEVR, DBF_MENU) {
  8811         prompt("Alarm Severity")
  7652         prompt("Alarm Severity")
  8812         special(SPC_NOMOD)
  7653         special(SPC_NOMOD)
  8813         menu(menuAlarmSevr)
  7654         menu(menuAlarmSevr)
  8814     }
  7655     }
  8815     field(NSTA, DBF_MENU) {
  7656     field(NSTA, DBF_MENU) {
       
  7657         prompt("New Alarm Status")
  8816         menu(menuAlarmStat)
  7658         menu(menuAlarmStat)
  8817         prompt("New Alarm Status")
  7659         interest(2)
  8818         special(SPC_NOMOD)
  7660         special(SPC_NOMOD)
  8819         interest(2)
       
  8820     }
  7661     }
  8821     field(NSEV, DBF_MENU) {
  7662     field(NSEV, DBF_MENU) {
  8822         special(SPC_NOMOD)
  7663         menu(menuAlarmSevr)
  8823         interest(2)
  7664         interest(2)
       
  7665         special(SPC_NOMOD)
  8824         prompt("New Alarm Severity")
  7666         prompt("New Alarm Severity")
  8825         menu(menuAlarmSevr)
       
  8826     }
  7667     }
  8827     field(ACKS, DBF_MENU) {
  7668     field(ACKS, DBF_MENU) {
  8828         prompt("Alarm Ack Severity")
  7669         prompt("Alarm Ack Severity")
  8829         interest(2)
  7670         special(SPC_NOMOD)
  8830         special(SPC_NOMOD)
  7671         menu(menuAlarmSevr)
  8831         menu(menuAlarmSevr)
  7672         interest(2)
  8832     }
  7673     }
  8833     field(ACKT, DBF_MENU) {
  7674     field(ACKT, DBF_MENU) {
       
  7675         prompt("Alarm Ack Transient")
  8834         initial("YES")
  7676         initial("YES")
  8835         prompt("Alarm Ack Transient")
  7677         promptgroup("70 - Alarm")
  8836         special(SPC_NOMOD)
  7678         special(SPC_NOMOD)
  8837         interest(2)
       
  8838         promptgroup("70 - Alarm")
       
  8839         menu(menuYesNo)
  7679         menu(menuYesNo)
       
  7680         interest(2)
  8840     }
  7681     }
  8841     field(DISS, DBF_MENU) {
  7682     field(DISS, DBF_MENU) {
  8842         promptgroup("70 - Alarm")
  7683         promptgroup("70 - Alarm")
       
  7684         menu(menuAlarmSevr)
  8843         interest(1)
  7685         interest(1)
  8844         prompt("Disable Alarm Sevrty")
  7686         prompt("Disable Alarm Sevrty")
  8845         menu(menuAlarmSevr)
       
  8846     }
  7687     }
  8847     field(LCNT, DBF_UCHAR) {
  7688     field(LCNT, DBF_UCHAR) {
  8848         special(SPC_NOMOD)
  7689         special(SPC_NOMOD)
  8849         interest(2)
  7690         interest(2)
  8850         prompt("Lock Count")
  7691         prompt("Lock Count")
  8851     }
  7692     }
  8852     field(PACT, DBF_UCHAR) {
  7693     field(PACT, DBF_UCHAR) {
       
  7694         special(SPC_NOMOD)
       
  7695         interest(1)
  8853         prompt("Record active")
  7696         prompt("Record active")
  8854         interest(1)
       
  8855         special(SPC_NOMOD)
       
  8856     }
  7697     }
  8857     field(PUTF, DBF_UCHAR) {
  7698     field(PUTF, DBF_UCHAR) {
  8858         interest(1)
       
  8859         special(SPC_NOMOD)
       
  8860         prompt("dbPutField process")
  7699         prompt("dbPutField process")
       
  7700         interest(1)
       
  7701         special(SPC_NOMOD)
  8861     }
  7702     }
  8862     field(RPRO, DBF_UCHAR) {
  7703     field(RPRO, DBF_UCHAR) {
  8863         special(SPC_NOMOD)
       
  8864         interest(1)
       
  8865         prompt("Reprocess ")
  7704         prompt("Reprocess ")
       
  7705         interest(1)
       
  7706         special(SPC_NOMOD)
  8866     }
  7707     }
  8867     field(ASP, DBF_NOACCESS) {
  7708     field(ASP, DBF_NOACCESS) {
  8868         special(SPC_NOMOD)
  7709         special(SPC_NOMOD)
  8869         interest(4)
  7710         interest(4)
  8870         prompt("Access Security Pvt")
  7711         prompt("Access Security Pvt")
  8871         extra("struct asgMember    *asp")
  7712         extra("struct asgMember    *asp")
  8872     }
  7713     }
  8873     field(PPN, DBF_NOACCESS) {
  7714     field(PPN, DBF_NOACCESS) {
  8874         extra("struct processNotify *ppn")
  7715         extra("struct processNotify *ppn")
  8875         interest(4)
       
  8876         special(SPC_NOMOD)
       
  8877         prompt("pprocessNotify")
  7716         prompt("pprocessNotify")
       
  7717         interest(4)
       
  7718         special(SPC_NOMOD)
  8878     }
  7719     }
  8879     field(PPNR, DBF_NOACCESS) {
  7720     field(PPNR, DBF_NOACCESS) {
       
  7721         special(SPC_NOMOD)
       
  7722         interest(4)
  8880         prompt("pprocessNotifyRecord")
  7723         prompt("pprocessNotifyRecord")
  8881         special(SPC_NOMOD)
       
  8882         interest(4)
       
  8883         extra("struct processNotifyRecord *ppnr")
  7724         extra("struct processNotifyRecord *ppnr")
  8884     }
  7725     }
  8885     field(SPVT, DBF_NOACCESS) {
  7726     field(SPVT, DBF_NOACCESS) {
       
  7727         interest(4)
       
  7728         special(SPC_NOMOD)
       
  7729         prompt("Scan Private")
  8886         extra("struct scan_element *spvt")
  7730         extra("struct scan_element *spvt")
  8887         interest(4)
       
  8888         special(SPC_NOMOD)
       
  8889         prompt("Scan Private")
       
  8890     }
  7731     }
  8891     field(RSET, DBF_NOACCESS) {
  7732     field(RSET, DBF_NOACCESS) {
  8892         prompt("Address of RSET")
  7733         prompt("Address of RSET")
  8893         special(SPC_NOMOD)
       
  8894         interest(4)
       
  8895         extra("struct typed_rset   *rset")
  7734         extra("struct typed_rset   *rset")
       
  7735         special(SPC_NOMOD)
       
  7736         interest(4)
  8896     }
  7737     }
  8897     field(DSET, DBF_NOACCESS) {
  7738     field(DSET, DBF_NOACCESS) {
       
  7739         special(SPC_NOMOD)
       
  7740         interest(4)
       
  7741         extra("struct dset         *dset")
  8898         prompt("DSET address")
  7742         prompt("DSET address")
  8899         interest(4)
       
  8900         special(SPC_NOMOD)
       
  8901         extra("struct dset         *dset")
       
  8902     }
  7743     }
  8903     field(DPVT, DBF_NOACCESS) {
  7744     field(DPVT, DBF_NOACCESS) {
       
  7745         interest(4)
       
  7746         special(SPC_NOMOD)
       
  7747         prompt("Device Private")
  8904         extra("void                *dpvt")
  7748         extra("void                *dpvt")
  8905         prompt("Device Private")
       
  8906         interest(4)
       
  8907         special(SPC_NOMOD)
       
  8908     }
  7749     }
  8909     field(RDES, DBF_NOACCESS) {
  7750     field(RDES, DBF_NOACCESS) {
       
  7751         interest(4)
       
  7752         special(SPC_NOMOD)
       
  7753         prompt("Address of dbRecordType")
  8910         extra("struct dbRecordType *rdes")
  7754         extra("struct dbRecordType *rdes")
  8911         special(SPC_NOMOD)
       
  8912         interest(4)
       
  8913         prompt("Address of dbRecordType")
       
  8914     }
  7755     }
  8915     field(LSET, DBF_NOACCESS) {
  7756     field(LSET, DBF_NOACCESS) {
  8916         extra("struct lockRecord   *lset")
  7757         extra("struct lockRecord   *lset")
  8917         special(SPC_NOMOD)
       
  8918         interest(4)
       
  8919         prompt("Lock Set")
  7758         prompt("Lock Set")
       
  7759         special(SPC_NOMOD)
       
  7760         interest(4)
  8920     }
  7761     }
  8921     field(PRIO, DBF_MENU) {
  7762     field(PRIO, DBF_MENU) {
  8922         prompt("Scheduling Priority")
  7763         prompt("Scheduling Priority")
  8923         promptgroup("20 - Scan")
       
  8924         interest(1)
       
  8925         special(SPC_SCAN)
  7764         special(SPC_SCAN)
  8926         menu(menuPriority)
  7765         menu(menuPriority)
       
  7766         interest(1)
       
  7767         promptgroup("20 - Scan")
  8927     }
  7768     }
  8928     field(TPRO, DBF_UCHAR) {
  7769     field(TPRO, DBF_UCHAR) {
  8929         prompt("Trace Processing")
  7770         prompt("Trace Processing")
  8930     }
  7771     }
  8931     field(BKPT, DBF_NOACCESS) {
  7772     field(BKPT, DBF_NOACCESS) {
       
  7773         prompt("Break Point")
  8932         extra("char                bkpt")
  7774         extra("char                bkpt")
  8933         prompt("Break Point")
  7775         interest(1)
  8934         special(SPC_NOMOD)
  7776         special(SPC_NOMOD)
  8935         interest(1)
       
  8936     }
  7777     }
  8937     field(UDF, DBF_UCHAR) {
  7778     field(UDF, DBF_UCHAR) {
  8938         promptgroup("10 - Common")
       
  8939         interest(1)
       
  8940         prompt("Undefined")
  7779         prompt("Undefined")
  8941         pp(TRUE)
  7780         initial("1")
  8942         initial("1")
  7781         promptgroup("10 - Common")
       
  7782         pp(TRUE)
       
  7783         interest(1)
  8943     }
  7784     }
  8944     field(UDFS, DBF_MENU) {
  7785     field(UDFS, DBF_MENU) {
       
  7786         menu(menuAlarmSevr)
       
  7787         interest(1)
       
  7788         promptgroup("70 - Alarm")
  8945         initial("INVALID")
  7789         initial("INVALID")
  8946         menu(menuAlarmSevr)
       
  8947         interest(1)
       
  8948         promptgroup("70 - Alarm")
       
  8949         prompt("Undefined Alarm Sevrty")
  7790         prompt("Undefined Alarm Sevrty")
  8950     }
  7791     }
  8951     field(TIME, DBF_NOACCESS) {
  7792     field(TIME, DBF_NOACCESS) {
       
  7793         special(SPC_NOMOD)
       
  7794         interest(2)
       
  7795         prompt("Time")
  8952         extra("epicsTimeStamp      time")
  7796         extra("epicsTimeStamp      time")
  8953         interest(2)
       
  8954         special(SPC_NOMOD)
       
  8955         prompt("Time")
       
  8956     }
  7797     }
  8957     field(FLNK, DBF_FWDLINK) {
  7798     field(FLNK, DBF_FWDLINK) {
  8958         prompt("Forward Process Link")
  7799         prompt("Forward Process Link")
  8959         interest(1)
  7800         interest(1)
  8960         promptgroup("20 - Scan")
  7801         promptgroup("20 - Scan")
  8961     }
  7802     }
  8962     field(VAL, DBF_ENUM) {
  7803     field(VAL, DBF_ENUM) {
       
  7804         promptgroup("50 - Output")
       
  7805         pp(TRUE)
       
  7806         special(SPC_DBADDR)
       
  7807         prompt("Desired Value")
  8963         asl(ASL0)
  7808         asl(ASL0)
  8964         prompt("Current Value")
  7809     }
       
  7810     field(DOL, DBF_INLINK) {
       
  7811         prompt("Desired Output Loc")
       
  7812         interest(1)
       
  7813         promptgroup("40 - Input")
       
  7814     }
       
  7815     field(OMSL, DBF_MENU) {
       
  7816         prompt("Output Mode Select")
       
  7817         interest(1)
       
  7818         menu(menuOmsl)
  8965         promptgroup("50 - Output")
  7819         promptgroup("50 - Output")
  8966         pp(TRUE)
  7820     }
  8967     }
  7821     field(NOBT, DBF_USHORT) {
  8968     field(OMSL, DBF_MENU) {
  7822         special(SPC_NOMOD)
  8969         interest(1)
  7823         interest(1)
  8970         promptgroup("50 - Output")
  7824         promptgroup("50 - Output")
  8971         prompt("Output Mode Select")
  7825         prompt("Number of Bits")
  8972         menu(menuOmsl)
       
  8973     }
       
  8974     field(DOL, DBF_INLINK) {
       
  8975         interest(1)
       
  8976         promptgroup("40 - Input")
       
  8977         prompt("Desired Output Loc")
       
  8978     }
  7826     }
  8979     field(OUT, DBF_OUTLINK) {
  7827     field(OUT, DBF_OUTLINK) {
       
  7828         promptgroup("50 - Output")
       
  7829         interest(1)
  8980         prompt("Output Specification")
  7830         prompt("Output Specification")
  8981         promptgroup("50 - Output")
  7831     }
  8982         interest(1)
  7832     field(ZRVL, DBF_ULONG) {
  8983     }
  7833         base(HEX)
  8984     field(HIGH, DBF_DOUBLE) {
  7834         prompt("Zero Value")
  8985         promptgroup("30 - Action")
  7835         interest(1)
  8986         interest(1)
  7836         special(SPC_MOD)
  8987         prompt("Seconds to Hold High")
  7837         promptgroup("51 - Output 0-7")
  8988     }
  7838         pp(TRUE)
  8989     field(ZNAM, DBF_STRING) {
  7839     }
       
  7840     field(ONVL, DBF_ULONG) {
       
  7841         promptgroup("51 - Output 0-7")
       
  7842         pp(TRUE)
       
  7843         special(SPC_MOD)
       
  7844         interest(1)
       
  7845         prompt("One Value")
       
  7846         base(HEX)
       
  7847     }
       
  7848     field(TWVL, DBF_ULONG) {
       
  7849         special(SPC_MOD)
       
  7850         interest(1)
       
  7851         pp(TRUE)
       
  7852         promptgroup("51 - Output 0-7")
       
  7853         prompt("Two Value")
       
  7854         base(HEX)
       
  7855     }
       
  7856     field(THVL, DBF_ULONG) {
       
  7857         base(HEX)
       
  7858         prompt("Three Value")
       
  7859         interest(1)
       
  7860         special(SPC_MOD)
       
  7861         pp(TRUE)
       
  7862         promptgroup("51 - Output 0-7")
       
  7863     }
       
  7864     field(FRVL, DBF_ULONG) {
       
  7865         prompt("Four Value")
       
  7866         base(HEX)
       
  7867         special(SPC_MOD)
       
  7868         interest(1)
       
  7869         promptgroup("51 - Output 0-7")
       
  7870         pp(TRUE)
       
  7871     }
       
  7872     field(FVVL, DBF_ULONG) {
       
  7873         pp(TRUE)
       
  7874         promptgroup("51 - Output 0-7")
       
  7875         special(SPC_MOD)
       
  7876         interest(1)
       
  7877         prompt("Five Value")
       
  7878         base(HEX)
       
  7879     }
       
  7880     field(SXVL, DBF_ULONG) {
       
  7881         promptgroup("51 - Output 0-7")
       
  7882         pp(TRUE)
       
  7883         interest(1)
       
  7884         special(SPC_MOD)
       
  7885         base(HEX)
       
  7886         prompt("Six Value")
       
  7887     }
       
  7888     field(SVVL, DBF_ULONG) {
       
  7889         prompt("Seven Value")
       
  7890         base(HEX)
       
  7891         promptgroup("51 - Output 0-7")
       
  7892         pp(TRUE)
       
  7893         special(SPC_MOD)
       
  7894         interest(1)
       
  7895     }
       
  7896     field(EIVL, DBF_ULONG) {
       
  7897         base(HEX)
       
  7898         prompt("Eight Value")
       
  7899         interest(1)
       
  7900         special(SPC_MOD)
       
  7901         pp(TRUE)
       
  7902         promptgroup("52 - Output 8-15")
       
  7903     }
       
  7904     field(NIVL, DBF_ULONG) {
       
  7905         interest(1)
       
  7906         special(SPC_MOD)
       
  7907         pp(TRUE)
       
  7908         promptgroup("52 - Output 8-15")
       
  7909         base(HEX)
       
  7910         prompt("Nine Value")
       
  7911     }
       
  7912     field(TEVL, DBF_ULONG) {
       
  7913         base(HEX)
       
  7914         prompt("Ten Value")
       
  7915         interest(1)
       
  7916         special(SPC_MOD)
       
  7917         promptgroup("52 - Output 8-15")
       
  7918         pp(TRUE)
       
  7919     }
       
  7920     field(ELVL, DBF_ULONG) {
       
  7921         prompt("Eleven Value")
       
  7922         base(HEX)
       
  7923         special(SPC_MOD)
       
  7924         interest(1)
       
  7925         promptgroup("52 - Output 8-15")
       
  7926         pp(TRUE)
       
  7927     }
       
  7928     field(TVVL, DBF_ULONG) {
       
  7929         base(HEX)
       
  7930         prompt("Twelve Value")
       
  7931         interest(1)
       
  7932         special(SPC_MOD)
       
  7933         pp(TRUE)
       
  7934         promptgroup("52 - Output 8-15")
       
  7935     }
       
  7936     field(TTVL, DBF_ULONG) {
       
  7937         promptgroup("52 - Output 8-15")
       
  7938         pp(TRUE)
       
  7939         special(SPC_MOD)
       
  7940         interest(1)
       
  7941         prompt("Thirteen Value")
       
  7942         base(HEX)
       
  7943     }
       
  7944     field(FTVL, DBF_ULONG) {
       
  7945         prompt("Fourteen Value")
       
  7946         base(HEX)
       
  7947         special(SPC_MOD)
       
  7948         interest(1)
       
  7949         promptgroup("52 - Output 8-15")
       
  7950         pp(TRUE)
       
  7951     }
       
  7952     field(FFVL, DBF_ULONG) {
       
  7953         pp(TRUE)
       
  7954         promptgroup("52 - Output 8-15")
       
  7955         interest(1)
       
  7956         special(SPC_MOD)
       
  7957         base(HEX)
       
  7958         prompt("Fifteen Value")
       
  7959     }
       
  7960     field(ZRST, DBF_STRING) {
  8990         size(26)
  7961         size(26)
  8991         pp(TRUE)
  7962         prompt("Zero String")
  8992         prop(YES)
  7963         special(SPC_MOD)
  8993         promptgroup("80 - Display")
  7964         interest(1)
  8994         interest(1)
  7965         promptgroup("81 - Display 0-7")
  8995         prompt("Zero Name")
  7966         pp(TRUE)
  8996     }
  7967     }
  8997     field(ONAM, DBF_STRING) {
  7968     field(ONST, DBF_STRING) {
  8998         pp(TRUE)
  7969         special(SPC_MOD)
       
  7970         interest(1)
       
  7971         pp(TRUE)
       
  7972         promptgroup("81 - Display 0-7")
  8999         size(26)
  7973         size(26)
  9000         prompt("One Name")
  7974         prompt("One String")
  9001         promptgroup("80 - Display")
  7975     }
  9002         prop(YES)
  7976     field(TWST, DBF_STRING) {
  9003         interest(1)
  7977         promptgroup("81 - Display 0-7")
  9004     }
  7978         pp(TRUE)
  9005     field(RVAL, DBF_ULONG) {
  7979         interest(1)
  9006         pp(TRUE)
  7980         special(SPC_MOD)
  9007         prompt("Raw Value")
  7981         prompt("Two String")
  9008     }
  7982         size(26)
  9009     field(ORAW, DBF_ULONG) {
  7983     }
  9010         interest(3)
  7984     field(THST, DBF_STRING) {
  9011         special(SPC_NOMOD)
  7985         pp(TRUE)
  9012         prompt("prev Raw Value")
  7986         promptgroup("81 - Display 0-7")
  9013     }
  7987         interest(1)
  9014     field(MASK, DBF_ULONG) {
  7988         special(SPC_MOD)
  9015         special(SPC_NOMOD)
  7989         prompt("Three String")
  9016         interest(1)
  7990         size(26)
  9017         prompt("Hardware Mask")
  7991     }
  9018     }
  7992     field(FRST, DBF_STRING) {
  9019     field(RPVT, DBF_NOACCESS) {
  7993         prompt("Four String")
  9020         extra("void *  rpvt")
  7994         size(26)
  9021         prompt("Record Private")
  7995         promptgroup("81 - Display 0-7")
  9022         special(SPC_NOMOD)
  7996         pp(TRUE)
  9023         interest(4)
  7997         interest(1)
  9024     }
  7998         special(SPC_MOD)
  9025     field(WDPT, DBF_NOACCESS) {
  7999     }
  9026         extra("void *	wdpt")
  8000     field(FVST, DBF_STRING) {
  9027         interest(4)
  8001         special(SPC_MOD)
  9028         special(SPC_NOMOD)
  8002         interest(1)
  9029         prompt("Watch Dog Timer ID")
  8003         promptgroup("81 - Display 0-7")
  9030     }
  8004         pp(TRUE)
  9031     field(ZSV, DBF_MENU) {
  8005         size(26)
  9032         pp(TRUE)
  8006         prompt("Five String")
  9033         menu(menuAlarmSevr)
  8007     }
  9034         interest(1)
  8008     field(SXST, DBF_STRING) {
  9035         promptgroup("70 - Alarm")
  8009         promptgroup("81 - Display 0-7")
  9036         prompt("Zero Error Severity")
  8010         pp(TRUE)
  9037     }
  8011         special(SPC_MOD)
  9038     field(OSV, DBF_MENU) {
  8012         interest(1)
  9039         pp(TRUE)
  8013         prompt("Six String")
  9040         prompt("One Error Severity")
  8014         size(26)
  9041         interest(1)
  8015     }
  9042         promptgroup("70 - Alarm")
  8016     field(SVST, DBF_STRING) {
  9043         menu(menuAlarmSevr)
  8017         prompt("Seven String")
       
  8018         size(26)
       
  8019         promptgroup("81 - Display 0-7")
       
  8020         pp(TRUE)
       
  8021         interest(1)
       
  8022         special(SPC_MOD)
       
  8023     }
       
  8024     field(EIST, DBF_STRING) {
       
  8025         special(SPC_MOD)
       
  8026         interest(1)
       
  8027         pp(TRUE)
       
  8028         promptgroup("82 - Display 8-15")
       
  8029         size(26)
       
  8030         prompt("Eight String")
       
  8031     }
       
  8032     field(NIST, DBF_STRING) {
       
  8033         size(26)
       
  8034         prompt("Nine String")
       
  8035         interest(1)
       
  8036         special(SPC_MOD)
       
  8037         promptgroup("82 - Display 8-15")
       
  8038         pp(TRUE)
       
  8039     }
       
  8040     field(TEST, DBF_STRING) {
       
  8041         size(26)
       
  8042         prompt("Ten String")
       
  8043         interest(1)
       
  8044         special(SPC_MOD)
       
  8045         promptgroup("82 - Display 8-15")
       
  8046         pp(TRUE)
       
  8047     }
       
  8048     field(ELST, DBF_STRING) {
       
  8049         special(SPC_MOD)
       
  8050         interest(1)
       
  8051         promptgroup("82 - Display 8-15")
       
  8052         pp(TRUE)
       
  8053         size(26)
       
  8054         prompt("Eleven String")
       
  8055     }
       
  8056     field(TVST, DBF_STRING) {
       
  8057         size(26)
       
  8058         prompt("Twelve String")
       
  8059         interest(1)
       
  8060         special(SPC_MOD)
       
  8061         pp(TRUE)
       
  8062         promptgroup("82 - Display 8-15")
       
  8063     }
       
  8064     field(TTST, DBF_STRING) {
       
  8065         pp(TRUE)
       
  8066         promptgroup("82 - Display 8-15")
       
  8067         interest(1)
       
  8068         special(SPC_MOD)
       
  8069         prompt("Thirteen String")
       
  8070         size(26)
       
  8071     }
       
  8072     field(FTST, DBF_STRING) {
       
  8073         size(26)
       
  8074         prompt("Fourteen String")
       
  8075         interest(1)
       
  8076         special(SPC_MOD)
       
  8077         pp(TRUE)
       
  8078         promptgroup("82 - Display 8-15")
       
  8079     }
       
  8080     field(FFST, DBF_STRING) {
       
  8081         prompt("Fifteen String")
       
  8082         size(26)
       
  8083         promptgroup("82 - Display 8-15")
       
  8084         pp(TRUE)
       
  8085         special(SPC_MOD)
       
  8086         interest(1)
       
  8087     }
       
  8088     field(ZRSV, DBF_MENU) {
       
  8089         menu(menuAlarmSevr)
       
  8090         interest(1)
       
  8091         promptgroup("71 - Alarm 0-7")
       
  8092         pp(TRUE)
       
  8093         prompt("State Zero Severity")
       
  8094     }
       
  8095     field(ONSV, DBF_MENU) {
       
  8096         menu(menuAlarmSevr)
       
  8097         interest(1)
       
  8098         pp(TRUE)
       
  8099         promptgroup("71 - Alarm 0-7")
       
  8100         prompt("State One Severity")
       
  8101     }
       
  8102     field(TWSV, DBF_MENU) {
       
  8103         prompt("State Two Severity")
       
  8104         menu(menuAlarmSevr)
       
  8105         interest(1)
       
  8106         pp(TRUE)
       
  8107         promptgroup("71 - Alarm 0-7")
       
  8108     }
       
  8109     field(THSV, DBF_MENU) {
       
  8110         prompt("State Three Severity")
       
  8111         promptgroup("71 - Alarm 0-7")
       
  8112         pp(TRUE)
       
  8113         interest(1)
       
  8114         menu(menuAlarmSevr)
       
  8115     }
       
  8116     field(FRSV, DBF_MENU) {
       
  8117         prompt("State Four Severity")
       
  8118         menu(menuAlarmSevr)
       
  8119         interest(1)
       
  8120         pp(TRUE)
       
  8121         promptgroup("71 - Alarm 0-7")
       
  8122     }
       
  8123     field(FVSV, DBF_MENU) {
       
  8124         promptgroup("71 - Alarm 0-7")
       
  8125         pp(TRUE)
       
  8126         interest(1)
       
  8127         menu(menuAlarmSevr)
       
  8128         prompt("State Five Severity")
       
  8129     }
       
  8130     field(SXSV, DBF_MENU) {
       
  8131         pp(TRUE)
       
  8132         promptgroup("71 - Alarm 0-7")
       
  8133         interest(1)
       
  8134         menu(menuAlarmSevr)
       
  8135         prompt("State Six Severity")
       
  8136     }
       
  8137     field(SVSV, DBF_MENU) {
       
  8138         prompt("State Seven Severity")
       
  8139         promptgroup("71 - Alarm 0-7")
       
  8140         pp(TRUE)
       
  8141         menu(menuAlarmSevr)
       
  8142         interest(1)
       
  8143     }
       
  8144     field(EISV, DBF_MENU) {
       
  8145         prompt("State Eight Severity")
       
  8146         promptgroup("72 - Alarm 8-15")
       
  8147         pp(TRUE)
       
  8148         interest(1)
       
  8149         menu(menuAlarmSevr)
       
  8150     }
       
  8151     field(NISV, DBF_MENU) {
       
  8152         prompt("State Nine Severity")
       
  8153         interest(1)
       
  8154         menu(menuAlarmSevr)
       
  8155         promptgroup("72 - Alarm 8-15")
       
  8156         pp(TRUE)
       
  8157     }
       
  8158     field(TESV, DBF_MENU) {
       
  8159         interest(1)
       
  8160         menu(menuAlarmSevr)
       
  8161         pp(TRUE)
       
  8162         promptgroup("72 - Alarm 8-15")
       
  8163         prompt("State Ten Severity")
       
  8164     }
       
  8165     field(ELSV, DBF_MENU) {
       
  8166         promptgroup("72 - Alarm 8-15")
       
  8167         pp(TRUE)
       
  8168         interest(1)
       
  8169         menu(menuAlarmSevr)
       
  8170         prompt("State Eleven Severity")
       
  8171     }
       
  8172     field(TVSV, DBF_MENU) {
       
  8173         interest(1)
       
  8174         menu(menuAlarmSevr)
       
  8175         pp(TRUE)
       
  8176         promptgroup("72 - Alarm 8-15")
       
  8177         prompt("State Twelve Severity")
       
  8178     }
       
  8179     field(TTSV, DBF_MENU) {
       
  8180         promptgroup("72 - Alarm 8-15")
       
  8181         pp(TRUE)
       
  8182         interest(1)
       
  8183         menu(menuAlarmSevr)
       
  8184         prompt("State Thirteen Sevr")
       
  8185     }
       
  8186     field(FTSV, DBF_MENU) {
       
  8187         promptgroup("72 - Alarm 8-15")
       
  8188         pp(TRUE)
       
  8189         interest(1)
       
  8190         menu(menuAlarmSevr)
       
  8191         prompt("State Fourteen Sevr")
       
  8192     }
       
  8193     field(FFSV, DBF_MENU) {
       
  8194         prompt("State Fifteen Sevr")
       
  8195         pp(TRUE)
       
  8196         promptgroup("72 - Alarm 8-15")
       
  8197         menu(menuAlarmSevr)
       
  8198         interest(1)
       
  8199     }
       
  8200     field(UNSV, DBF_MENU) {
       
  8201         menu(menuAlarmSevr)
       
  8202         interest(1)
       
  8203         pp(TRUE)
       
  8204         promptgroup("70 - Alarm")
       
  8205         prompt("Unknown State Sevr")
  9044     }
  8206     }
  9045     field(COSV, DBF_MENU) {
  8207     field(COSV, DBF_MENU) {
  9046         prompt("Change of State Sevr")
  8208         prompt("Change of State Sevr")
  9047         interest(1)
  8209         promptgroup("70 - Alarm")
  9048         promptgroup("70 - Alarm")
  8210         pp(TRUE)
  9049         menu(menuAlarmSevr)
  8211         interest(1)
  9050         pp(TRUE)
  8212         menu(menuAlarmSevr)
       
  8213     }
       
  8214     field(RVAL, DBF_ULONG) {
       
  8215         pp(TRUE)
       
  8216         prompt("Raw Value")
       
  8217     }
       
  8218     field(ORAW, DBF_ULONG) {
       
  8219         interest(3)
       
  8220         special(SPC_NOMOD)
       
  8221         prompt("Prev Raw Value")
  9051     }
  8222     }
  9052     field(RBV, DBF_ULONG) {
  8223     field(RBV, DBF_ULONG) {
       
  8224         special(SPC_NOMOD)
  9053         prompt("Readback Value")
  8225         prompt("Readback Value")
  9054         special(SPC_NOMOD)
       
  9055     }
  8226     }
  9056     field(ORBV, DBF_ULONG) {
  8227     field(ORBV, DBF_ULONG) {
  9057         interest(3)
  8228         interest(3)
  9058         special(SPC_NOMOD)
  8229         special(SPC_NOMOD)
  9059         prompt("Prev Readback Value")
  8230         prompt("Prev Readback Value")
  9060     }
  8231     }
       
  8232     field(MASK, DBF_ULONG) {
       
  8233         special(SPC_NOMOD)
       
  8234         interest(1)
       
  8235         prompt("Hardware Mask")
       
  8236     }
  9061     field(MLST, DBF_USHORT) {
  8237     field(MLST, DBF_USHORT) {
  9062         special(SPC_NOMOD)
       
  9063         interest(3)
       
  9064         prompt("Last Value Monitored")
  8238         prompt("Last Value Monitored")
       
  8239         special(SPC_NOMOD)
       
  8240         interest(3)
  9065     }
  8241     }
  9066     field(LALM, DBF_USHORT) {
  8242     field(LALM, DBF_USHORT) {
  9067         interest(3)
  8243         interest(3)
  9068         special(SPC_NOMOD)
  8244         special(SPC_NOMOD)
  9069         prompt("Last Value Alarmed")
  8245         prompt("Last Value Alarmed")
  9070     }
  8246     }
       
  8247     field(SDEF, DBF_SHORT) {
       
  8248         special(SPC_NOMOD)
       
  8249         interest(3)
       
  8250         prompt("States Defined")
       
  8251     }
       
  8252     field(SHFT, DBF_USHORT) {
       
  8253         promptgroup("50 - Output")
       
  8254         interest(1)
       
  8255         prompt("Shift")
       
  8256     }
  9071     field(SIOL, DBF_OUTLINK) {
  8257     field(SIOL, DBF_OUTLINK) {
       
  8258         promptgroup("90 - Simulate")
       
  8259         interest(1)
  9072         prompt("Simulation Output Link")
  8260         prompt("Simulation Output Link")
       
  8261     }
       
  8262     field(SIML, DBF_INLINK) {
       
  8263         interest(1)
  9073         promptgroup("90 - Simulate")
  8264         promptgroup("90 - Simulate")
  9074         interest(1)
  8265         prompt("Simulation Mode Link")
  9075     }
  8266     }
  9076     field(SIML, DBF_INLINK) {
  8267     field(SIMM, DBF_MENU) {
       
  8268         prompt("Simulation Mode")
       
  8269         special(SPC_MOD)
       
  8270         menu(menuYesNo)
       
  8271         interest(1)
       
  8272     }
       
  8273     field(SIMS, DBF_MENU) {
       
  8274         prompt("Simulation Mode Severity")
       
  8275         menu(menuAlarmSevr)
       
  8276         interest(2)
  9077         promptgroup("90 - Simulate")
  8277         promptgroup("90 - Simulate")
  9078         interest(1)
       
  9079         prompt("Simulation Mode Link")
       
  9080     }
       
  9081     field(SIMM, DBF_MENU) {
       
  9082         menu(menuYesNo)
       
  9083         special(SPC_MOD)
       
  9084         interest(1)
       
  9085         prompt("Simulation Mode")
       
  9086     }
       
  9087     field(SIMS, DBF_MENU) {
       
  9088         menu(menuAlarmSevr)
       
  9089         promptgroup("90 - Simulate")
       
  9090         interest(2)
       
  9091         prompt("Simulation Mode Severity")
       
  9092     }
  8278     }
  9093     field(OLDSIMM, DBF_MENU) {
  8279     field(OLDSIMM, DBF_MENU) {
  9094         special(SPC_NOMOD)
  8280         interest(4)
  9095         interest(4)
  8281         menu(menuSimm)
       
  8282         special(SPC_NOMOD)
  9096         prompt("Prev. Simulation Mode")
  8283         prompt("Prev. Simulation Mode")
  9097         menu(menuSimm)
       
  9098     }
  8284     }
  9099     field(SSCN, DBF_MENU) {
  8285     field(SSCN, DBF_MENU) {
  9100         menu(menuScan)
       
  9101         interest(1)
       
  9102         promptgroup("90 - Simulate")
       
  9103         prompt("Sim. Mode Scan")
  8286         prompt("Sim. Mode Scan")
  9104         initial("65535")
  8287         initial("65535")
       
  8288         promptgroup("90 - Simulate")
       
  8289         interest(1)
       
  8290         menu(menuScan)
  9105     }
  8291     }
  9106     field(SDLY, DBF_DOUBLE) {
  8292     field(SDLY, DBF_DOUBLE) {
  9107         initial("-1.0")
  8293         initial("-1.0")
  9108         prompt("Sim. Mode Async Delay")
  8294         prompt("Sim. Mode Async Delay")
  9109         interest(2)
  8295         interest(2)
  9110         promptgroup("90 - Simulate")
  8296         promptgroup("90 - Simulate")
  9111     }
  8297     }
  9112     field(SIMPVT, DBF_NOACCESS) {
  8298     field(SIMPVT, DBF_NOACCESS) {
       
  8299         interest(4)
       
  8300         special(SPC_NOMOD)
       
  8301         prompt("Sim. Mode Private")
  9113         extra("CALLBACK            *simpvt")
  8302         extra("CALLBACK            *simpvt")
  9114         special(SPC_NOMOD)
       
  9115         interest(4)
       
  9116         prompt("Sim. Mode Private")
       
  9117     }
  8303     }
  9118     field(IVOA, DBF_MENU) {
  8304     field(IVOA, DBF_MENU) {
  9119         prompt("INVALID outpt action")
  8305         prompt("INVALID outpt action")
  9120         promptgroup("50 - Output")
  8306         promptgroup("50 - Output")
  9121         interest(2)
  8307         interest(2)
  9125         prompt("INVALID output value")
  8311         prompt("INVALID output value")
  9126         promptgroup("50 - Output")
  8312         promptgroup("50 - Output")
  9127         interest(2)
  8313         interest(2)
  9128     }
  8314     }
  9129 }
  8315 }
  9130 device(bo, CONSTANT, devBoSoft, "Soft Channel")
  8316 device(mbbo, CONSTANT, devMbboSoft, "Soft Channel")
  9131 device(bo, CONSTANT, devBoSoftRaw, "Raw Soft Channel")
  8317 device(mbbo, CONSTANT, devMbboSoftRaw, "Raw Soft Channel")
  9132 device(bo, CONSTANT, devBoSoftCallback, "Async Soft Channel")
  8318 device(mbbo, CONSTANT, devMbboSoftCallback, "Async Soft Channel")
  9133 device(bo, INST_IO, devBoGeneralTime, "General Time")
  8319 device(mbbo, INST_IO, asynMbboInt32, "asynInt32")
  9134 device(bo, INST_IO, devBoDbState, "Db State")
  8320 device(mbbo, INST_IO, asynMbboUInt32Digital, "asynUInt32Digital")
  9135 device(bo, INST_IO, asynBoInt32, "asynInt32")
  8321 device(mbbo, INST_IO, devmbboStream, "stream")
  9136 device(bo, INST_IO, asynBoUInt32Digital, "asynUInt32Digital")
  8322 device(mbbo, INST_IO, devMbboMPC, "asyn MPC")
  9137 device(bo, INST_IO, devboStream, "stream")
  8323 device(mbbo, INST_IO, devMbboTPG261, "asyn TPG261")
  9138 device(bo, INST_IO, devBoStrParm, "asyn bo stringParm")
  8324 recordtype(longout) {
  9139 device(bo, INST_IO, devBoMPC, "asyn MPC")
       
  9140 device(bo, GPIB_IO, devBoGP307Gpib, "Vg307 GPIB Instrument")
       
  9141 device(bo, BBGPIB_IO, devBoAX301, "PZT Bug")
       
  9142 device(bo, INST_IO, devBoTPG261, "asyn TPG261")
       
  9143 recordtype(permissive) {
       
  9144     %#include "epicsTypes.h"
       
  9145     %#include "link.h"
       
  9146     %#include "epicsMutex.h"
       
  9147     %#include "ellLib.h"
       
  9148     %#include "epicsTime.h"
       
  9149     field(NAME, DBF_STRING) {
       
  9150         prompt("Record Name")
       
  9151         special(SPC_NOMOD)
       
  9152         size(61)
       
  9153     }
       
  9154     field(DESC, DBF_STRING) {
       
  9155         size(41)
       
  9156         promptgroup("10 - Common")
       
  9157         prompt("Descriptor")
       
  9158     }
       
  9159     field(ASG, DBF_STRING) {
       
  9160         promptgroup("10 - Common")
       
  9161         special(SPC_AS)
       
  9162         prompt("Access Security Group")
       
  9163         size(29)
       
  9164     }
       
  9165     field(SCAN, DBF_MENU) {
       
  9166         menu(menuScan)
       
  9167         prompt("Scan Mechanism")
       
  9168         promptgroup("20 - Scan")
       
  9169         interest(1)
       
  9170         special(SPC_SCAN)
       
  9171     }
       
  9172     field(PINI, DBF_MENU) {
       
  9173         menu(menuPini)
       
  9174         prompt("Process at iocInit")
       
  9175         promptgroup("20 - Scan")
       
  9176         interest(1)
       
  9177     }
       
  9178     field(PHAS, DBF_SHORT) {
       
  9179         interest(1)
       
  9180         special(SPC_SCAN)
       
  9181         promptgroup("20 - Scan")
       
  9182         prompt("Scan Phase")
       
  9183     }
       
  9184     field(EVNT, DBF_STRING) {
       
  9185         interest(1)
       
  9186         special(SPC_SCAN)
       
  9187         promptgroup("20 - Scan")
       
  9188         prompt("Event Name")
       
  9189         size(40)
       
  9190     }
       
  9191     field(TSE, DBF_SHORT) {
       
  9192         prompt("Time Stamp Event")
       
  9193         interest(1)
       
  9194         promptgroup("20 - Scan")
       
  9195     }
       
  9196     field(TSEL, DBF_INLINK) {
       
  9197         prompt("Time Stamp Link")
       
  9198         promptgroup("20 - Scan")
       
  9199         interest(1)
       
  9200     }
       
  9201     field(DTYP, DBF_DEVICE) {
       
  9202         promptgroup("10 - Common")
       
  9203         interest(1)
       
  9204         prompt("Device Type")
       
  9205     }
       
  9206     field(DISV, DBF_SHORT) {
       
  9207         promptgroup("20 - Scan")
       
  9208         prompt("Disable Value")
       
  9209         initial("1")
       
  9210     }
       
  9211     field(DISA, DBF_SHORT) {
       
  9212         prompt("Disable")
       
  9213     }
       
  9214     field(SDIS, DBF_INLINK) {
       
  9215         promptgroup("20 - Scan")
       
  9216         interest(1)
       
  9217         prompt("Scanning Disable")
       
  9218     }
       
  9219     field(MLOK, DBF_NOACCESS) {
       
  9220         prompt("Monitor lock")
       
  9221         interest(4)
       
  9222         special(SPC_NOMOD)
       
  9223         extra("epicsMutexId        mlok")
       
  9224     }
       
  9225     field(MLIS, DBF_NOACCESS) {
       
  9226         interest(4)
       
  9227         special(SPC_NOMOD)
       
  9228         prompt("Monitor List")
       
  9229         extra("ELLLIST             mlis")
       
  9230     }
       
  9231     field(BKLNK, DBF_NOACCESS) {
       
  9232         extra("ELLLIST             bklnk")
       
  9233         prompt("Backwards link tracking")
       
  9234         special(SPC_NOMOD)
       
  9235         interest(4)
       
  9236     }
       
  9237     field(DISP, DBF_UCHAR) {
       
  9238         prompt("Disable putField")
       
  9239     }
       
  9240     field(PROC, DBF_UCHAR) {
       
  9241         prompt("Force Processing")
       
  9242         interest(3)
       
  9243         pp(TRUE)
       
  9244     }
       
  9245     field(STAT, DBF_MENU) {
       
  9246         menu(menuAlarmStat)
       
  9247         special(SPC_NOMOD)
       
  9248         prompt("Alarm Status")
       
  9249         initial("UDF")
       
  9250     }
       
  9251     field(SEVR, DBF_MENU) {
       
  9252         prompt("Alarm Severity")
       
  9253         special(SPC_NOMOD)
       
  9254         menu(menuAlarmSevr)
       
  9255     }
       
  9256     field(NSTA, DBF_MENU) {
       
  9257         prompt("New Alarm Status")
       
  9258         interest(2)
       
  9259         special(SPC_NOMOD)
       
  9260         menu(menuAlarmStat)
       
  9261     }
       
  9262     field(NSEV, DBF_MENU) {
       
  9263         menu(menuAlarmSevr)
       
  9264         prompt("New Alarm Severity")
       
  9265         special(SPC_NOMOD)
       
  9266         interest(2)
       
  9267     }
       
  9268     field(ACKS, DBF_MENU) {
       
  9269         menu(menuAlarmSevr)
       
  9270         special(SPC_NOMOD)
       
  9271         interest(2)
       
  9272         prompt("Alarm Ack Severity")
       
  9273     }
       
  9274     field(ACKT, DBF_MENU) {
       
  9275         initial("YES")
       
  9276         menu(menuYesNo)
       
  9277         interest(2)
       
  9278         special(SPC_NOMOD)
       
  9279         promptgroup("70 - Alarm")
       
  9280         prompt("Alarm Ack Transient")
       
  9281     }
       
  9282     field(DISS, DBF_MENU) {
       
  9283         menu(menuAlarmSevr)
       
  9284         interest(1)
       
  9285         promptgroup("70 - Alarm")
       
  9286         prompt("Disable Alarm Sevrty")
       
  9287     }
       
  9288     field(LCNT, DBF_UCHAR) {
       
  9289         interest(2)
       
  9290         special(SPC_NOMOD)
       
  9291         prompt("Lock Count")
       
  9292     }
       
  9293     field(PACT, DBF_UCHAR) {
       
  9294         interest(1)
       
  9295         special(SPC_NOMOD)
       
  9296         prompt("Record active")
       
  9297     }
       
  9298     field(PUTF, DBF_UCHAR) {
       
  9299         prompt("dbPutField process")
       
  9300         special(SPC_NOMOD)
       
  9301         interest(1)
       
  9302     }
       
  9303     field(RPRO, DBF_UCHAR) {
       
  9304         prompt("Reprocess ")
       
  9305         interest(1)
       
  9306         special(SPC_NOMOD)
       
  9307     }
       
  9308     field(ASP, DBF_NOACCESS) {
       
  9309         extra("struct asgMember    *asp")
       
  9310         prompt("Access Security Pvt")
       
  9311         interest(4)
       
  9312         special(SPC_NOMOD)
       
  9313     }
       
  9314     field(PPN, DBF_NOACCESS) {
       
  9315         extra("struct processNotify *ppn")
       
  9316         special(SPC_NOMOD)
       
  9317         interest(4)
       
  9318         prompt("pprocessNotify")
       
  9319     }
       
  9320     field(PPNR, DBF_NOACCESS) {
       
  9321         prompt("pprocessNotifyRecord")
       
  9322         special(SPC_NOMOD)
       
  9323         interest(4)
       
  9324         extra("struct processNotifyRecord *ppnr")
       
  9325     }
       
  9326     field(SPVT, DBF_NOACCESS) {
       
  9327         extra("struct scan_element *spvt")
       
  9328         prompt("Scan Private")
       
  9329         special(SPC_NOMOD)
       
  9330         interest(4)
       
  9331     }
       
  9332     field(RSET, DBF_NOACCESS) {
       
  9333         extra("struct typed_rset   *rset")
       
  9334         prompt("Address of RSET")
       
  9335         special(SPC_NOMOD)
       
  9336         interest(4)
       
  9337     }
       
  9338     field(DSET, DBF_NOACCESS) {
       
  9339         extra("struct dset         *dset")
       
  9340         special(SPC_NOMOD)
       
  9341         interest(4)
       
  9342         prompt("DSET address")
       
  9343     }
       
  9344     field(DPVT, DBF_NOACCESS) {
       
  9345         special(SPC_NOMOD)
       
  9346         interest(4)
       
  9347         prompt("Device Private")
       
  9348         extra("void                *dpvt")
       
  9349     }
       
  9350     field(RDES, DBF_NOACCESS) {
       
  9351         extra("struct dbRecordType *rdes")
       
  9352         prompt("Address of dbRecordType")
       
  9353         special(SPC_NOMOD)
       
  9354         interest(4)
       
  9355     }
       
  9356     field(LSET, DBF_NOACCESS) {
       
  9357         extra("struct lockRecord   *lset")
       
  9358         interest(4)
       
  9359         special(SPC_NOMOD)
       
  9360         prompt("Lock Set")
       
  9361     }
       
  9362     field(PRIO, DBF_MENU) {
       
  9363         menu(menuPriority)
       
  9364         promptgroup("20 - Scan")
       
  9365         interest(1)
       
  9366         special(SPC_SCAN)
       
  9367         prompt("Scheduling Priority")
       
  9368     }
       
  9369     field(TPRO, DBF_UCHAR) {
       
  9370         prompt("Trace Processing")
       
  9371     }
       
  9372     field(BKPT, DBF_NOACCESS) {
       
  9373         interest(1)
       
  9374         special(SPC_NOMOD)
       
  9375         prompt("Break Point")
       
  9376         extra("char                bkpt")
       
  9377     }
       
  9378     field(UDF, DBF_UCHAR) {
       
  9379         prompt("Undefined")
       
  9380         interest(1)
       
  9381         promptgroup("10 - Common")
       
  9382         pp(TRUE)
       
  9383         initial("1")
       
  9384     }
       
  9385     field(UDFS, DBF_MENU) {
       
  9386         promptgroup("70 - Alarm")
       
  9387         interest(1)
       
  9388         prompt("Undefined Alarm Sevrty")
       
  9389         menu(menuAlarmSevr)
       
  9390         initial("INVALID")
       
  9391     }
       
  9392     field(TIME, DBF_NOACCESS) {
       
  9393         prompt("Time")
       
  9394         interest(2)
       
  9395         special(SPC_NOMOD)
       
  9396         extra("epicsTimeStamp      time")
       
  9397     }
       
  9398     field(FLNK, DBF_FWDLINK) {
       
  9399         interest(1)
       
  9400         promptgroup("20 - Scan")
       
  9401         prompt("Forward Process Link")
       
  9402     }
       
  9403     field(LABL, DBF_STRING) {
       
  9404         interest(1)
       
  9405         promptgroup("80 - Display")
       
  9406         prompt("Button Label")
       
  9407         pp(TRUE)
       
  9408         size(20)
       
  9409     }
       
  9410     field(VAL, DBF_USHORT) {
       
  9411         promptgroup("40 - Input")
       
  9412         prompt("Status")
       
  9413         asl(ASL0)
       
  9414         pp(TRUE)
       
  9415     }
       
  9416     field(OVAL, DBF_USHORT) {
       
  9417         special(SPC_NOMOD)
       
  9418         interest(3)
       
  9419         prompt("Old Status")
       
  9420     }
       
  9421     field(WFLG, DBF_USHORT) {
       
  9422         pp(TRUE)
       
  9423         prompt("Wait Flag")
       
  9424     }
       
  9425     field(OFLG, DBF_USHORT) {
       
  9426         prompt("Old Flag")
       
  9427         special(SPC_NOMOD)
       
  9428         interest(3)
       
  9429     }
       
  9430 }
       
  9431 recordtype(state) {
       
  9432     %#include "epicsTypes.h"
       
  9433     %#include "link.h"
       
  9434     %#include "epicsMutex.h"
       
  9435     %#include "ellLib.h"
       
  9436     %#include "epicsTime.h"
       
  9437     field(NAME, DBF_STRING) {
       
  9438         size(61)
       
  9439         special(SPC_NOMOD)
       
  9440         prompt("Record Name")
       
  9441     }
       
  9442     field(DESC, DBF_STRING) {
       
  9443         size(41)
       
  9444         promptgroup("10 - Common")
       
  9445         prompt("Descriptor")
       
  9446     }
       
  9447     field(ASG, DBF_STRING) {
       
  9448         size(29)
       
  9449         prompt("Access Security Group")
       
  9450         promptgroup("10 - Common")
       
  9451         special(SPC_AS)
       
  9452     }
       
  9453     field(SCAN, DBF_MENU) {
       
  9454         menu(menuScan)
       
  9455         promptgroup("20 - Scan")
       
  9456         interest(1)
       
  9457         special(SPC_SCAN)
       
  9458         prompt("Scan Mechanism")
       
  9459     }
       
  9460     field(PINI, DBF_MENU) {
       
  9461         interest(1)
       
  9462         promptgroup("20 - Scan")
       
  9463         prompt("Process at iocInit")
       
  9464         menu(menuPini)
       
  9465     }
       
  9466     field(PHAS, DBF_SHORT) {
       
  9467         prompt("Scan Phase")
       
  9468         interest(1)
       
  9469         promptgroup("20 - Scan")
       
  9470         special(SPC_SCAN)
       
  9471     }
       
  9472     field(EVNT, DBF_STRING) {
       
  9473         size(40)
       
  9474         special(SPC_SCAN)
       
  9475         interest(1)
       
  9476         promptgroup("20 - Scan")
       
  9477         prompt("Event Name")
       
  9478     }
       
  9479     field(TSE, DBF_SHORT) {
       
  9480         promptgroup("20 - Scan")
       
  9481         interest(1)
       
  9482         prompt("Time Stamp Event")
       
  9483     }
       
  9484     field(TSEL, DBF_INLINK) {
       
  9485         prompt("Time Stamp Link")
       
  9486         interest(1)
       
  9487         promptgroup("20 - Scan")
       
  9488     }
       
  9489     field(DTYP, DBF_DEVICE) {
       
  9490         prompt("Device Type")
       
  9491         promptgroup("10 - Common")
       
  9492         interest(1)
       
  9493     }
       
  9494     field(DISV, DBF_SHORT) {
       
  9495         promptgroup("20 - Scan")
       
  9496         prompt("Disable Value")
       
  9497         initial("1")
       
  9498     }
       
  9499     field(DISA, DBF_SHORT) {
       
  9500         prompt("Disable")
       
  9501     }
       
  9502     field(SDIS, DBF_INLINK) {
       
  9503         promptgroup("20 - Scan")
       
  9504         interest(1)
       
  9505         prompt("Scanning Disable")
       
  9506     }
       
  9507     field(MLOK, DBF_NOACCESS) {
       
  9508         extra("epicsMutexId        mlok")
       
  9509         prompt("Monitor lock")
       
  9510         interest(4)
       
  9511         special(SPC_NOMOD)
       
  9512     }
       
  9513     field(MLIS, DBF_NOACCESS) {
       
  9514         special(SPC_NOMOD)
       
  9515         interest(4)
       
  9516         prompt("Monitor List")
       
  9517         extra("ELLLIST             mlis")
       
  9518     }
       
  9519     field(BKLNK, DBF_NOACCESS) {
       
  9520         extra("ELLLIST             bklnk")
       
  9521         special(SPC_NOMOD)
       
  9522         interest(4)
       
  9523         prompt("Backwards link tracking")
       
  9524     }
       
  9525     field(DISP, DBF_UCHAR) {
       
  9526         prompt("Disable putField")
       
  9527     }
       
  9528     field(PROC, DBF_UCHAR) {
       
  9529         prompt("Force Processing")
       
  9530         interest(3)
       
  9531         pp(TRUE)
       
  9532     }
       
  9533     field(STAT, DBF_MENU) {
       
  9534         menu(menuAlarmStat)
       
  9535         prompt("Alarm Status")
       
  9536         special(SPC_NOMOD)
       
  9537         initial("UDF")
       
  9538     }
       
  9539     field(SEVR, DBF_MENU) {
       
  9540         menu(menuAlarmSevr)
       
  9541         special(SPC_NOMOD)
       
  9542         prompt("Alarm Severity")
       
  9543     }
       
  9544     field(NSTA, DBF_MENU) {
       
  9545         interest(2)
       
  9546         special(SPC_NOMOD)
       
  9547         prompt("New Alarm Status")
       
  9548         menu(menuAlarmStat)
       
  9549     }
       
  9550     field(NSEV, DBF_MENU) {
       
  9551         menu(menuAlarmSevr)
       
  9552         special(SPC_NOMOD)
       
  9553         interest(2)
       
  9554         prompt("New Alarm Severity")
       
  9555     }
       
  9556     field(ACKS, DBF_MENU) {
       
  9557         menu(menuAlarmSevr)
       
  9558         special(SPC_NOMOD)
       
  9559         interest(2)
       
  9560         prompt("Alarm Ack Severity")
       
  9561     }
       
  9562     field(ACKT, DBF_MENU) {
       
  9563         prompt("Alarm Ack Transient")
       
  9564         special(SPC_NOMOD)
       
  9565         interest(2)
       
  9566         promptgroup("70 - Alarm")
       
  9567         menu(menuYesNo)
       
  9568         initial("YES")
       
  9569     }
       
  9570     field(DISS, DBF_MENU) {
       
  9571         interest(1)
       
  9572         promptgroup("70 - Alarm")
       
  9573         prompt("Disable Alarm Sevrty")
       
  9574         menu(menuAlarmSevr)
       
  9575     }
       
  9576     field(LCNT, DBF_UCHAR) {
       
  9577         prompt("Lock Count")
       
  9578         special(SPC_NOMOD)
       
  9579         interest(2)
       
  9580     }
       
  9581     field(PACT, DBF_UCHAR) {
       
  9582         prompt("Record active")
       
  9583         interest(1)
       
  9584         special(SPC_NOMOD)
       
  9585     }
       
  9586     field(PUTF, DBF_UCHAR) {
       
  9587         prompt("dbPutField process")
       
  9588         interest(1)
       
  9589         special(SPC_NOMOD)
       
  9590     }
       
  9591     field(RPRO, DBF_UCHAR) {
       
  9592         interest(1)
       
  9593         special(SPC_NOMOD)
       
  9594         prompt("Reprocess ")
       
  9595     }
       
  9596     field(ASP, DBF_NOACCESS) {
       
  9597         extra("struct asgMember    *asp")
       
  9598         special(SPC_NOMOD)
       
  9599         interest(4)
       
  9600         prompt("Access Security Pvt")
       
  9601     }
       
  9602     field(PPN, DBF_NOACCESS) {
       
  9603         extra("struct processNotify *ppn")
       
  9604         interest(4)
       
  9605         special(SPC_NOMOD)
       
  9606         prompt("pprocessNotify")
       
  9607     }
       
  9608     field(PPNR, DBF_NOACCESS) {
       
  9609         extra("struct processNotifyRecord *ppnr")
       
  9610         prompt("pprocessNotifyRecord")
       
  9611         special(SPC_NOMOD)
       
  9612         interest(4)
       
  9613     }
       
  9614     field(SPVT, DBF_NOACCESS) {
       
  9615         prompt("Scan Private")
       
  9616         interest(4)
       
  9617         special(SPC_NOMOD)
       
  9618         extra("struct scan_element *spvt")
       
  9619     }
       
  9620     field(RSET, DBF_NOACCESS) {
       
  9621         special(SPC_NOMOD)
       
  9622         interest(4)
       
  9623         prompt("Address of RSET")
       
  9624         extra("struct typed_rset   *rset")
       
  9625     }
       
  9626     field(DSET, DBF_NOACCESS) {
       
  9627         interest(4)
       
  9628         special(SPC_NOMOD)
       
  9629         prompt("DSET address")
       
  9630         extra("struct dset         *dset")
       
  9631     }
       
  9632     field(DPVT, DBF_NOACCESS) {
       
  9633         prompt("Device Private")
       
  9634         interest(4)
       
  9635         special(SPC_NOMOD)
       
  9636         extra("void                *dpvt")
       
  9637     }
       
  9638     field(RDES, DBF_NOACCESS) {
       
  9639         extra("struct dbRecordType *rdes")
       
  9640         prompt("Address of dbRecordType")
       
  9641         interest(4)
       
  9642         special(SPC_NOMOD)
       
  9643     }
       
  9644     field(LSET, DBF_NOACCESS) {
       
  9645         interest(4)
       
  9646         special(SPC_NOMOD)
       
  9647         prompt("Lock Set")
       
  9648         extra("struct lockRecord   *lset")
       
  9649     }
       
  9650     field(PRIO, DBF_MENU) {
       
  9651         menu(menuPriority)
       
  9652         promptgroup("20 - Scan")
       
  9653         interest(1)
       
  9654         special(SPC_SCAN)
       
  9655         prompt("Scheduling Priority")
       
  9656     }
       
  9657     field(TPRO, DBF_UCHAR) {
       
  9658         prompt("Trace Processing")
       
  9659     }
       
  9660     field(BKPT, DBF_NOACCESS) {
       
  9661         prompt("Break Point")
       
  9662         interest(1)
       
  9663         special(SPC_NOMOD)
       
  9664         extra("char                bkpt")
       
  9665     }
       
  9666     field(UDF, DBF_UCHAR) {
       
  9667         interest(1)
       
  9668         promptgroup("10 - Common")
       
  9669         prompt("Undefined")
       
  9670         initial("1")
       
  9671         pp(TRUE)
       
  9672     }
       
  9673     field(UDFS, DBF_MENU) {
       
  9674         menu(menuAlarmSevr)
       
  9675         promptgroup("70 - Alarm")
       
  9676         interest(1)
       
  9677         prompt("Undefined Alarm Sevrty")
       
  9678         initial("INVALID")
       
  9679     }
       
  9680     field(TIME, DBF_NOACCESS) {
       
  9681         extra("epicsTimeStamp      time")
       
  9682         interest(2)
       
  9683         special(SPC_NOMOD)
       
  9684         prompt("Time")
       
  9685     }
       
  9686     field(FLNK, DBF_FWDLINK) {
       
  9687         interest(1)
       
  9688         promptgroup("20 - Scan")
       
  9689         prompt("Forward Process Link")
       
  9690     }
       
  9691     field(VAL, DBF_STRING) {
       
  9692         asl(ASL0)
       
  9693         prompt("Value")
       
  9694         promptgroup("40 - Input")
       
  9695         pp(TRUE)
       
  9696         size(20)
       
  9697     }
       
  9698     field(OVAL, DBF_STRING) {
       
  9699         size(20)
       
  9700         special(SPC_NOMOD)
       
  9701         interest(3)
       
  9702         prompt("Prev Value")
       
  9703     }
       
  9704 }
       
  9705 recordtype(longin) {
       
  9706     %#include "epicsTypes.h"
  8325     %#include "epicsTypes.h"
  9707     %#include "link.h"
  8326     %#include "link.h"
  9708     %#include "epicsMutex.h"
  8327     %#include "epicsMutex.h"
  9709     %#include "ellLib.h"
  8328     %#include "ellLib.h"
  9710     %#include "epicsTime.h"
  8329     %#include "epicsTime.h"
  9714         prompt("Record Name")
  8333         prompt("Record Name")
  9715         special(SPC_NOMOD)
  8334         special(SPC_NOMOD)
  9716     }
  8335     }
  9717     field(DESC, DBF_STRING) {
  8336     field(DESC, DBF_STRING) {
  9718         promptgroup("10 - Common")
  8337         promptgroup("10 - Common")
       
  8338         size(41)
  9719         prompt("Descriptor")
  8339         prompt("Descriptor")
  9720         size(41)
       
  9721     }
  8340     }
  9722     field(ASG, DBF_STRING) {
  8341     field(ASG, DBF_STRING) {
       
  8342         size(29)
       
  8343         prompt("Access Security Group")
  9723         special(SPC_AS)
  8344         special(SPC_AS)
  9724         promptgroup("10 - Common")
  8345         promptgroup("10 - Common")
  9725         prompt("Access Security Group")
       
  9726         size(29)
       
  9727     }
  8346     }
  9728     field(SCAN, DBF_MENU) {
  8347     field(SCAN, DBF_MENU) {
       
  8348         promptgroup("20 - Scan")
       
  8349         special(SPC_SCAN)
       
  8350         interest(1)
  9729         menu(menuScan)
  8351         menu(menuScan)
  9730         prompt("Scan Mechanism")
  8352         prompt("Scan Mechanism")
  9731         promptgroup("20 - Scan")
  8353     }
       
  8354     field(PINI, DBF_MENU) {
       
  8355         promptgroup("20 - Scan")
       
  8356         interest(1)
       
  8357         menu(menuPini)
       
  8358         prompt("Process at iocInit")
       
  8359     }
       
  8360     field(PHAS, DBF_SHORT) {
  9732         interest(1)
  8361         interest(1)
  9733         special(SPC_SCAN)
  8362         special(SPC_SCAN)
  9734     }
  8363         promptgroup("20 - Scan")
  9735     field(PINI, DBF_MENU) {
       
  9736         menu(menuPini)
       
  9737         promptgroup("20 - Scan")
       
  9738         interest(1)
       
  9739         prompt("Process at iocInit")
       
  9740     }
       
  9741     field(PHAS, DBF_SHORT) {
       
  9742         prompt("Scan Phase")
  8364         prompt("Scan Phase")
       
  8365     }
       
  8366     field(EVNT, DBF_STRING) {
       
  8367         interest(1)
  9743         special(SPC_SCAN)
  8368         special(SPC_SCAN)
  9744         interest(1)
  8369         promptgroup("20 - Scan")
  9745         promptgroup("20 - Scan")
       
  9746     }
       
  9747     field(EVNT, DBF_STRING) {
       
  9748         size(40)
  8370         size(40)
  9749         prompt("Event Name")
  8371         prompt("Event Name")
  9750         interest(1)
       
  9751         special(SPC_SCAN)
       
  9752         promptgroup("20 - Scan")
       
  9753     }
  8372     }
  9754     field(TSE, DBF_SHORT) {
  8373     field(TSE, DBF_SHORT) {
       
  8374         promptgroup("20 - Scan")
       
  8375         interest(1)
  9755         prompt("Time Stamp Event")
  8376         prompt("Time Stamp Event")
  9756         promptgroup("20 - Scan")
       
  9757         interest(1)
       
  9758     }
  8377     }
  9759     field(TSEL, DBF_INLINK) {
  8378     field(TSEL, DBF_INLINK) {
  9760         interest(1)
  8379         promptgroup("20 - Scan")
  9761         promptgroup("20 - Scan")
  8380         interest(1)
  9762         prompt("Time Stamp Link")
  8381         prompt("Time Stamp Link")
  9763     }
  8382     }
  9764     field(DTYP, DBF_DEVICE) {
  8383     field(DTYP, DBF_DEVICE) {
  9765         promptgroup("10 - Common")
       
  9766         interest(1)
       
  9767         prompt("Device Type")
  8384         prompt("Device Type")
       
  8385         promptgroup("10 - Common")
       
  8386         interest(1)
  9768     }
  8387     }
  9769     field(DISV, DBF_SHORT) {
  8388     field(DISV, DBF_SHORT) {
  9770         initial("1")
       
  9771         promptgroup("20 - Scan")
       
  9772         prompt("Disable Value")
  8389         prompt("Disable Value")
       
  8390         initial("1")
       
  8391         promptgroup("20 - Scan")
  9773     }
  8392     }
  9774     field(DISA, DBF_SHORT) {
  8393     field(DISA, DBF_SHORT) {
  9775         prompt("Disable")
  8394         prompt("Disable")
  9776     }
  8395     }
  9777     field(SDIS, DBF_INLINK) {
  8396     field(SDIS, DBF_INLINK) {
  9778         prompt("Scanning Disable")
  8397         prompt("Scanning Disable")
  9779         interest(1)
  8398         interest(1)
  9780         promptgroup("20 - Scan")
  8399         promptgroup("20 - Scan")
  9781     }
  8400     }
  9782     field(MLOK, DBF_NOACCESS) {
  8401     field(MLOK, DBF_NOACCESS) {
       
  8402         extra("epicsMutexId        mlok")
       
  8403         prompt("Monitor lock")
       
  8404         special(SPC_NOMOD)
       
  8405         interest(4)
       
  8406     }
       
  8407     field(MLIS, DBF_NOACCESS) {
       
  8408         interest(4)
       
  8409         special(SPC_NOMOD)
       
  8410         extra("ELLLIST             mlis")
       
  8411         prompt("Monitor List")
       
  8412     }
       
  8413     field(BKLNK, DBF_NOACCESS) {
       
  8414         interest(4)
       
  8415         special(SPC_NOMOD)
       
  8416         extra("ELLLIST             bklnk")
       
  8417         prompt("Backwards link tracking")
       
  8418     }
       
  8419     field(DISP, DBF_UCHAR) {
       
  8420         prompt("Disable putField")
       
  8421     }
       
  8422     field(PROC, DBF_UCHAR) {
       
  8423         prompt("Force Processing")
       
  8424         interest(3)
       
  8425         pp(TRUE)
       
  8426     }
       
  8427     field(STAT, DBF_MENU) {
       
  8428         special(SPC_NOMOD)
       
  8429         menu(menuAlarmStat)
       
  8430         initial("UDF")
       
  8431         prompt("Alarm Status")
       
  8432     }
       
  8433     field(SEVR, DBF_MENU) {
       
  8434         special(SPC_NOMOD)
       
  8435         menu(menuAlarmSevr)
       
  8436         prompt("Alarm Severity")
       
  8437     }
       
  8438     field(NSTA, DBF_MENU) {
       
  8439         prompt("New Alarm Status")
       
  8440         menu(menuAlarmStat)
       
  8441         interest(2)
       
  8442         special(SPC_NOMOD)
       
  8443     }
       
  8444     field(NSEV, DBF_MENU) {
       
  8445         special(SPC_NOMOD)
       
  8446         menu(menuAlarmSevr)
       
  8447         interest(2)
       
  8448         prompt("New Alarm Severity")
       
  8449     }
       
  8450     field(ACKS, DBF_MENU) {
       
  8451         prompt("Alarm Ack Severity")
       
  8452         special(SPC_NOMOD)
       
  8453         interest(2)
       
  8454         menu(menuAlarmSevr)
       
  8455     }
       
  8456     field(ACKT, DBF_MENU) {
       
  8457         prompt("Alarm Ack Transient")
       
  8458         initial("YES")
       
  8459         promptgroup("70 - Alarm")
       
  8460         interest(2)
       
  8461         menu(menuYesNo)
       
  8462         special(SPC_NOMOD)
       
  8463     }
       
  8464     field(DISS, DBF_MENU) {
       
  8465         prompt("Disable Alarm Sevrty")
       
  8466         promptgroup("70 - Alarm")
       
  8467         menu(menuAlarmSevr)
       
  8468         interest(1)
       
  8469     }
       
  8470     field(LCNT, DBF_UCHAR) {
       
  8471         prompt("Lock Count")
       
  8472         special(SPC_NOMOD)
       
  8473         interest(2)
       
  8474     }
       
  8475     field(PACT, DBF_UCHAR) {
       
  8476         prompt("Record active")
       
  8477         special(SPC_NOMOD)
       
  8478         interest(1)
       
  8479     }
       
  8480     field(PUTF, DBF_UCHAR) {
       
  8481         special(SPC_NOMOD)
       
  8482         interest(1)
       
  8483         prompt("dbPutField process")
       
  8484     }
       
  8485     field(RPRO, DBF_UCHAR) {
       
  8486         interest(1)
       
  8487         special(SPC_NOMOD)
       
  8488         prompt("Reprocess ")
       
  8489     }
       
  8490     field(ASP, DBF_NOACCESS) {
       
  8491         interest(4)
       
  8492         special(SPC_NOMOD)
       
  8493         prompt("Access Security Pvt")
       
  8494         extra("struct asgMember    *asp")
       
  8495     }
       
  8496     field(PPN, DBF_NOACCESS) {
       
  8497         interest(4)
       
  8498         special(SPC_NOMOD)
       
  8499         extra("struct processNotify *ppn")
       
  8500         prompt("pprocessNotify")
       
  8501     }
       
  8502     field(PPNR, DBF_NOACCESS) {
       
  8503         interest(4)
       
  8504         special(SPC_NOMOD)
       
  8505         prompt("pprocessNotifyRecord")
       
  8506         extra("struct processNotifyRecord *ppnr")
       
  8507     }
       
  8508     field(SPVT, DBF_NOACCESS) {
       
  8509         special(SPC_NOMOD)
       
  8510         interest(4)
       
  8511         prompt("Scan Private")
       
  8512         extra("struct scan_element *spvt")
       
  8513     }
       
  8514     field(RSET, DBF_NOACCESS) {
       
  8515         special(SPC_NOMOD)
       
  8516         interest(4)
       
  8517         extra("struct typed_rset   *rset")
       
  8518         prompt("Address of RSET")
       
  8519     }
       
  8520     field(DSET, DBF_NOACCESS) {
       
  8521         interest(4)
       
  8522         special(SPC_NOMOD)
       
  8523         prompt("DSET address")
       
  8524         extra("struct dset         *dset")
       
  8525     }
       
  8526     field(DPVT, DBF_NOACCESS) {
       
  8527         extra("void                *dpvt")
       
  8528         prompt("Device Private")
       
  8529         special(SPC_NOMOD)
       
  8530         interest(4)
       
  8531     }
       
  8532     field(RDES, DBF_NOACCESS) {
       
  8533         interest(4)
       
  8534         special(SPC_NOMOD)
       
  8535         prompt("Address of dbRecordType")
       
  8536         extra("struct dbRecordType *rdes")
       
  8537     }
       
  8538     field(LSET, DBF_NOACCESS) {
       
  8539         interest(4)
       
  8540         special(SPC_NOMOD)
       
  8541         prompt("Lock Set")
       
  8542         extra("struct lockRecord   *lset")
       
  8543     }
       
  8544     field(PRIO, DBF_MENU) {
       
  8545         promptgroup("20 - Scan")
       
  8546         special(SPC_SCAN)
       
  8547         menu(menuPriority)
       
  8548         interest(1)
       
  8549         prompt("Scheduling Priority")
       
  8550     }
       
  8551     field(TPRO, DBF_UCHAR) {
       
  8552         prompt("Trace Processing")
       
  8553     }
       
  8554     field(BKPT, DBF_NOACCESS) {
       
  8555         interest(1)
       
  8556         special(SPC_NOMOD)
       
  8557         extra("char                bkpt")
       
  8558         prompt("Break Point")
       
  8559     }
       
  8560     field(UDF, DBF_UCHAR) {
       
  8561         initial("1")
       
  8562         prompt("Undefined")
       
  8563         interest(1)
       
  8564         promptgroup("10 - Common")
       
  8565         pp(TRUE)
       
  8566     }
       
  8567     field(UDFS, DBF_MENU) {
       
  8568         promptgroup("70 - Alarm")
       
  8569         menu(menuAlarmSevr)
       
  8570         interest(1)
       
  8571         prompt("Undefined Alarm Sevrty")
       
  8572         initial("INVALID")
       
  8573     }
       
  8574     field(TIME, DBF_NOACCESS) {
       
  8575         interest(2)
       
  8576         special(SPC_NOMOD)
       
  8577         extra("epicsTimeStamp      time")
       
  8578         prompt("Time")
       
  8579     }
       
  8580     field(FLNK, DBF_FWDLINK) {
       
  8581         promptgroup("20 - Scan")
       
  8582         interest(1)
       
  8583         prompt("Forward Process Link")
       
  8584     }
       
  8585     field(VAL, DBF_LONG) {
       
  8586         pp(TRUE)
       
  8587         promptgroup("50 - Output")
       
  8588         prompt("Desired Output")
       
  8589         asl(ASL0)
       
  8590     }
       
  8591     field(OUT, DBF_OUTLINK) {
       
  8592         interest(1)
       
  8593         promptgroup("50 - Output")
       
  8594         prompt("Output Specification")
       
  8595     }
       
  8596     field(DOL, DBF_INLINK) {
       
  8597         promptgroup("40 - Input")
       
  8598         interest(1)
       
  8599         prompt("Desired Output Loc")
       
  8600     }
       
  8601     field(OMSL, DBF_MENU) {
       
  8602         interest(1)
       
  8603         menu(menuOmsl)
       
  8604         promptgroup("50 - Output")
       
  8605         prompt("Output Mode Select")
       
  8606     }
       
  8607     field(EGU, DBF_STRING) {
       
  8608         interest(1)
       
  8609         prop(YES)
       
  8610         promptgroup("80 - Display")
       
  8611         size(16)
       
  8612         prompt("Engineering Units")
       
  8613     }
       
  8614     field(DRVH, DBF_LONG) {
       
  8615         prompt("Drive High Limit")
       
  8616         pp(TRUE)
       
  8617         promptgroup("30 - Action")
       
  8618         prop(YES)
       
  8619         interest(1)
       
  8620     }
       
  8621     field(DRVL, DBF_LONG) {
       
  8622         interest(1)
       
  8623         prop(YES)
       
  8624         promptgroup("30 - Action")
       
  8625         pp(TRUE)
       
  8626         prompt("Drive Low Limit")
       
  8627     }
       
  8628     field(HOPR, DBF_LONG) {
       
  8629         prompt("High Operating Range")
       
  8630         promptgroup("80 - Display")
       
  8631         interest(1)
       
  8632         prop(YES)
       
  8633     }
       
  8634     field(LOPR, DBF_LONG) {
       
  8635         promptgroup("80 - Display")
       
  8636         prop(YES)
       
  8637         interest(1)
       
  8638         prompt("Low Operating Range")
       
  8639     }
       
  8640     field(HIHI, DBF_LONG) {
       
  8641         prompt("Hihi Alarm Limit")
       
  8642         promptgroup("70 - Alarm")
       
  8643         pp(TRUE)
       
  8644         prop(YES)
       
  8645         interest(1)
       
  8646     }
       
  8647     field(LOLO, DBF_LONG) {
       
  8648         prompt("Lolo Alarm Limit")
       
  8649         interest(1)
       
  8650         prop(YES)
       
  8651         promptgroup("70 - Alarm")
       
  8652         pp(TRUE)
       
  8653     }
       
  8654     field(HIGH, DBF_LONG) {
       
  8655         prompt("High Alarm Limit")
       
  8656         pp(TRUE)
       
  8657         promptgroup("70 - Alarm")
       
  8658         interest(1)
       
  8659         prop(YES)
       
  8660     }
       
  8661     field(LOW, DBF_LONG) {
       
  8662         interest(1)
       
  8663         prop(YES)
       
  8664         promptgroup("70 - Alarm")
       
  8665         pp(TRUE)
       
  8666         prompt("Low Alarm Limit")
       
  8667     }
       
  8668     field(HHSV, DBF_MENU) {
       
  8669         interest(1)
       
  8670         menu(menuAlarmSevr)
       
  8671         promptgroup("70 - Alarm")
       
  8672         pp(TRUE)
       
  8673         prompt("Hihi Severity")
       
  8674     }
       
  8675     field(LLSV, DBF_MENU) {
       
  8676         prompt("Lolo Severity")
       
  8677         interest(1)
       
  8678         menu(menuAlarmSevr)
       
  8679         promptgroup("70 - Alarm")
       
  8680         pp(TRUE)
       
  8681     }
       
  8682     field(HSV, DBF_MENU) {
       
  8683         promptgroup("70 - Alarm")
       
  8684         pp(TRUE)
       
  8685         interest(1)
       
  8686         menu(menuAlarmSevr)
       
  8687         prompt("High Severity")
       
  8688     }
       
  8689     field(LSV, DBF_MENU) {
       
  8690         interest(1)
       
  8691         menu(menuAlarmSevr)
       
  8692         pp(TRUE)
       
  8693         promptgroup("70 - Alarm")
       
  8694         prompt("Low Severity")
       
  8695     }
       
  8696     field(HYST, DBF_LONG) {
       
  8697         promptgroup("70 - Alarm")
       
  8698         interest(1)
       
  8699         prompt("Alarm Deadband")
       
  8700     }
       
  8701     field(ADEL, DBF_LONG) {
       
  8702         prompt("Archive Deadband")
       
  8703         promptgroup("80 - Display")
       
  8704         interest(1)
       
  8705     }
       
  8706     field(MDEL, DBF_LONG) {
       
  8707         prompt("Monitor Deadband")
       
  8708         interest(1)
       
  8709         promptgroup("80 - Display")
       
  8710     }
       
  8711     field(LALM, DBF_LONG) {
       
  8712         prompt("Last Value Alarmed")
       
  8713         interest(3)
       
  8714         special(SPC_NOMOD)
       
  8715     }
       
  8716     field(ALST, DBF_LONG) {
       
  8717         interest(3)
       
  8718         special(SPC_NOMOD)
       
  8719         prompt("Last Value Archived")
       
  8720     }
       
  8721     field(MLST, DBF_LONG) {
       
  8722         special(SPC_NOMOD)
       
  8723         interest(3)
       
  8724         prompt("Last Val Monitored")
       
  8725     }
       
  8726     field(SIOL, DBF_OUTLINK) {
       
  8727         prompt("Simulation Output Link")
       
  8728         promptgroup("90 - Simulate")
       
  8729         interest(1)
       
  8730     }
       
  8731     field(SIML, DBF_INLINK) {
       
  8732         promptgroup("90 - Simulate")
       
  8733         interest(1)
       
  8734         prompt("Simulation Mode Link")
       
  8735     }
       
  8736     field(SIMM, DBF_MENU) {
       
  8737         prompt("Simulation Mode")
       
  8738         special(SPC_MOD)
       
  8739         interest(1)
       
  8740         menu(menuYesNo)
       
  8741     }
       
  8742     field(SIMS, DBF_MENU) {
       
  8743         promptgroup("90 - Simulate")
       
  8744         interest(2)
       
  8745         menu(menuAlarmSevr)
       
  8746         prompt("Simulation Mode Severity")
       
  8747     }
       
  8748     field(OLDSIMM, DBF_MENU) {
       
  8749         special(SPC_NOMOD)
       
  8750         interest(4)
       
  8751         menu(menuSimm)
       
  8752         prompt("Prev. Simulation Mode")
       
  8753     }
       
  8754     field(SSCN, DBF_MENU) {
       
  8755         menu(menuScan)
       
  8756         interest(1)
       
  8757         promptgroup("90 - Simulate")
       
  8758         initial("65535")
       
  8759         prompt("Sim. Mode Scan")
       
  8760     }
       
  8761     field(SDLY, DBF_DOUBLE) {
       
  8762         prompt("Sim. Mode Async Delay")
       
  8763         initial("-1.0")
       
  8764         promptgroup("90 - Simulate")
       
  8765         interest(2)
       
  8766     }
       
  8767     field(SIMPVT, DBF_NOACCESS) {
       
  8768         prompt("Sim. Mode Private")
       
  8769         extra("CALLBACK            *simpvt")
       
  8770         special(SPC_NOMOD)
       
  8771         interest(4)
       
  8772     }
       
  8773     field(IVOA, DBF_MENU) {
       
  8774         promptgroup("50 - Output")
       
  8775         interest(2)
       
  8776         menu(menuIvoa)
       
  8777         prompt("INVALID output action")
       
  8778     }
       
  8779     field(IVOV, DBF_LONG) {
       
  8780         prompt("INVALID output value")
       
  8781         promptgroup("50 - Output")
       
  8782         interest(2)
       
  8783     }
       
  8784 }
       
  8785 device(longout, CONSTANT, devLoSoft, "Soft Channel")
       
  8786 device(longout, CONSTANT, devLoSoftCallback, "Async Soft Channel")
       
  8787 device(longout, INST_IO, asynLoInt32, "asynInt32")
       
  8788 device(longout, INST_IO, asynLoUInt32Digital, "asynUInt32Digital")
       
  8789 device(longout, INST_IO, devlongoutStream, "stream")
       
  8790 device(longout, INST_IO, devLoStrParm, "asyn lo stringParm")
       
  8791 device(longout, BBGPIB_IO, devLoAX301, "PZT Bug")
       
  8792 recordtype(acalcout) {
       
  8793     %#include "epicsTypes.h"
       
  8794     %#include "link.h"
       
  8795     %#include "epicsMutex.h"
       
  8796     %#include "ellLib.h"
       
  8797     %#include "epicsTime.h"
       
  8798     field(NAME, DBF_STRING) {
       
  8799         size(61)
       
  8800         prompt("Record Name")
       
  8801         special(SPC_NOMOD)
       
  8802     }
       
  8803     field(DESC, DBF_STRING) {
       
  8804         promptgroup("10 - Common")
       
  8805         size(41)
       
  8806         prompt("Descriptor")
       
  8807     }
       
  8808     field(ASG, DBF_STRING) {
       
  8809         size(29)
       
  8810         prompt("Access Security Group")
       
  8811         special(SPC_AS)
       
  8812         promptgroup("10 - Common")
       
  8813     }
       
  8814     field(SCAN, DBF_MENU) {
       
  8815         prompt("Scan Mechanism")
       
  8816         promptgroup("20 - Scan")
       
  8817         special(SPC_SCAN)
       
  8818         menu(menuScan)
       
  8819         interest(1)
       
  8820     }
       
  8821     field(PINI, DBF_MENU) {
       
  8822         promptgroup("20 - Scan")
       
  8823         interest(1)
       
  8824         menu(menuPini)
       
  8825         prompt("Process at iocInit")
       
  8826     }
       
  8827     field(PHAS, DBF_SHORT) {
       
  8828         special(SPC_SCAN)
       
  8829         interest(1)
       
  8830         promptgroup("20 - Scan")
       
  8831         prompt("Scan Phase")
       
  8832     }
       
  8833     field(EVNT, DBF_STRING) {
       
  8834         special(SPC_SCAN)
       
  8835         interest(1)
       
  8836         promptgroup("20 - Scan")
       
  8837         size(40)
       
  8838         prompt("Event Name")
       
  8839     }
       
  8840     field(TSE, DBF_SHORT) {
       
  8841         promptgroup("20 - Scan")
       
  8842         interest(1)
       
  8843         prompt("Time Stamp Event")
       
  8844     }
       
  8845     field(TSEL, DBF_INLINK) {
       
  8846         interest(1)
       
  8847         promptgroup("20 - Scan")
       
  8848         prompt("Time Stamp Link")
       
  8849     }
       
  8850     field(DTYP, DBF_DEVICE) {
       
  8851         prompt("Device Type")
       
  8852         promptgroup("10 - Common")
       
  8853         interest(1)
       
  8854     }
       
  8855     field(DISV, DBF_SHORT) {
       
  8856         initial("1")
       
  8857         prompt("Disable Value")
       
  8858         promptgroup("20 - Scan")
       
  8859     }
       
  8860     field(DISA, DBF_SHORT) {
       
  8861         prompt("Disable")
       
  8862     }
       
  8863     field(SDIS, DBF_INLINK) {
       
  8864         prompt("Scanning Disable")
       
  8865         interest(1)
       
  8866         promptgroup("20 - Scan")
       
  8867     }
       
  8868     field(MLOK, DBF_NOACCESS) {
  9783         special(SPC_NOMOD)
  8869         special(SPC_NOMOD)
  9784         interest(4)
  8870         interest(4)
  9785         prompt("Monitor lock")
  8871         prompt("Monitor lock")
  9786         extra("epicsMutexId        mlok")
  8872         extra("epicsMutexId        mlok")
  9787     }
  8873     }
  9788     field(MLIS, DBF_NOACCESS) {
  8874     field(MLIS, DBF_NOACCESS) {
  9789         interest(4)
  8875         extra("ELLLIST             mlis")
  9790         special(SPC_NOMOD)
       
  9791         prompt("Monitor List")
  8876         prompt("Monitor List")
  9792         extra("ELLLIST             mlis")
  8877         interest(4)
       
  8878         special(SPC_NOMOD)
  9793     }
  8879     }
  9794     field(BKLNK, DBF_NOACCESS) {
  8880     field(BKLNK, DBF_NOACCESS) {
  9795         special(SPC_NOMOD)
  8881         interest(4)
  9796         interest(4)
  8882         special(SPC_NOMOD)
  9797         prompt("Backwards link tracking")
  8883         prompt("Backwards link tracking")
  9798         extra("ELLLIST             bklnk")
  8884         extra("ELLLIST             bklnk")
  9799     }
  8885     }
  9800     field(DISP, DBF_UCHAR) {
  8886     field(DISP, DBF_UCHAR) {
  9801         prompt("Disable putField")
  8887         prompt("Disable putField")
  9802     }
  8888     }
  9803     field(PROC, DBF_UCHAR) {
  8889     field(PROC, DBF_UCHAR) {
  9804         interest(3)
       
  9805         prompt("Force Processing")
  8890         prompt("Force Processing")
  9806         pp(TRUE)
  8891         pp(TRUE)
       
  8892         interest(3)
  9807     }
  8893     }
  9808     field(STAT, DBF_MENU) {
  8894     field(STAT, DBF_MENU) {
       
  8895         prompt("Alarm Status")
       
  8896         initial("UDF")
  9809         menu(menuAlarmStat)
  8897         menu(menuAlarmStat)
  9810         prompt("Alarm Status")
  8898         special(SPC_NOMOD)
  9811         special(SPC_NOMOD)
       
  9812         initial("UDF")
       
  9813     }
  8899     }
  9814     field(SEVR, DBF_MENU) {
  8900     field(SEVR, DBF_MENU) {
  9815         special(SPC_NOMOD)
       
  9816         prompt("Alarm Severity")
  8901         prompt("Alarm Severity")
       
  8902         special(SPC_NOMOD)
  9817         menu(menuAlarmSevr)
  8903         menu(menuAlarmSevr)
  9818     }
  8904     }
  9819     field(NSTA, DBF_MENU) {
  8905     field(NSTA, DBF_MENU) {
  9820         special(SPC_NOMOD)
       
  9821         interest(2)
       
  9822         prompt("New Alarm Status")
  8906         prompt("New Alarm Status")
  9823         menu(menuAlarmStat)
  8907         menu(menuAlarmStat)
       
  8908         interest(2)
       
  8909         special(SPC_NOMOD)
  9824     }
  8910     }
  9825     field(NSEV, DBF_MENU) {
  8911     field(NSEV, DBF_MENU) {
  9826         interest(2)
       
  9827         special(SPC_NOMOD)
       
  9828         prompt("New Alarm Severity")
  8912         prompt("New Alarm Severity")
  9829         menu(menuAlarmSevr)
  8913         interest(2)
       
  8914         menu(menuAlarmSevr)
       
  8915         special(SPC_NOMOD)
  9830     }
  8916     }
  9831     field(ACKS, DBF_MENU) {
  8917     field(ACKS, DBF_MENU) {
  9832         interest(2)
       
  9833         special(SPC_NOMOD)
       
  9834         prompt("Alarm Ack Severity")
  8918         prompt("Alarm Ack Severity")
  9835         menu(menuAlarmSevr)
  8919         interest(2)
       
  8920         menu(menuAlarmSevr)
       
  8921         special(SPC_NOMOD)
  9836     }
  8922     }
  9837     field(ACKT, DBF_MENU) {
  8923     field(ACKT, DBF_MENU) {
       
  8924         special(SPC_NOMOD)
       
  8925         menu(menuYesNo)
       
  8926         interest(2)
       
  8927         promptgroup("70 - Alarm")
       
  8928         initial("YES")
  9838         prompt("Alarm Ack Transient")
  8929         prompt("Alarm Ack Transient")
  9839         promptgroup("70 - Alarm")
       
  9840         interest(2)
       
  9841         special(SPC_NOMOD)
       
  9842         menu(menuYesNo)
       
  9843         initial("YES")
       
  9844     }
  8930     }
  9845     field(DISS, DBF_MENU) {
  8931     field(DISS, DBF_MENU) {
       
  8932         menu(menuAlarmSevr)
  9846         interest(1)
  8933         interest(1)
  9847         promptgroup("70 - Alarm")
  8934         promptgroup("70 - Alarm")
  9848         prompt("Disable Alarm Sevrty")
  8935         prompt("Disable Alarm Sevrty")
  9849         menu(menuAlarmSevr)
       
  9850     }
  8936     }
  9851     field(LCNT, DBF_UCHAR) {
  8937     field(LCNT, DBF_UCHAR) {
  9852         prompt("Lock Count")
  8938         prompt("Lock Count")
  9853         special(SPC_NOMOD)
  8939         interest(2)
  9854         interest(2)
  8940         special(SPC_NOMOD)
  9855     }
  8941     }
  9856     field(PACT, DBF_UCHAR) {
  8942     field(PACT, DBF_UCHAR) {
  9857         interest(1)
       
  9858         special(SPC_NOMOD)
       
  9859         prompt("Record active")
  8943         prompt("Record active")
       
  8944         interest(1)
       
  8945         special(SPC_NOMOD)
  9860     }
  8946     }
  9861     field(PUTF, DBF_UCHAR) {
  8947     field(PUTF, DBF_UCHAR) {
  9862         special(SPC_NOMOD)
       
  9863         interest(1)
       
  9864         prompt("dbPutField process")
  8948         prompt("dbPutField process")
       
  8949         interest(1)
       
  8950         special(SPC_NOMOD)
  9865     }
  8951     }
  9866     field(RPRO, DBF_UCHAR) {
  8952     field(RPRO, DBF_UCHAR) {
  9867         prompt("Reprocess ")
  8953         prompt("Reprocess ")
  9868         special(SPC_NOMOD)
  8954         special(SPC_NOMOD)
  9869         interest(1)
  8955         interest(1)
  9873         prompt("Access Security Pvt")
  8959         prompt("Access Security Pvt")
  9874         special(SPC_NOMOD)
  8960         special(SPC_NOMOD)
  9875         interest(4)
  8961         interest(4)
  9876     }
  8962     }
  9877     field(PPN, DBF_NOACCESS) {
  8963     field(PPN, DBF_NOACCESS) {
       
  8964         special(SPC_NOMOD)
       
  8965         interest(4)
       
  8966         extra("struct processNotify *ppn")
  9878         prompt("pprocessNotify")
  8967         prompt("pprocessNotify")
  9879         special(SPC_NOMOD)
       
  9880         interest(4)
       
  9881         extra("struct processNotify *ppn")
       
  9882     }
  8968     }
  9883     field(PPNR, DBF_NOACCESS) {
  8969     field(PPNR, DBF_NOACCESS) {
       
  8970         interest(4)
       
  8971         special(SPC_NOMOD)
  9884         extra("struct processNotifyRecord *ppnr")
  8972         extra("struct processNotifyRecord *ppnr")
  9885         prompt("pprocessNotifyRecord")
  8973         prompt("pprocessNotifyRecord")
  9886         special(SPC_NOMOD)
       
  9887         interest(4)
       
  9888     }
  8974     }
  9889     field(SPVT, DBF_NOACCESS) {
  8975     field(SPVT, DBF_NOACCESS) {
       
  8976         extra("struct scan_element *spvt")
  9890         prompt("Scan Private")
  8977         prompt("Scan Private")
  9891         interest(4)
  8978         special(SPC_NOMOD)
  9892         special(SPC_NOMOD)
  8979         interest(4)
  9893         extra("struct scan_element *spvt")
       
  9894     }
  8980     }
  9895     field(RSET, DBF_NOACCESS) {
  8981     field(RSET, DBF_NOACCESS) {
       
  8982         special(SPC_NOMOD)
       
  8983         interest(4)
       
  8984         prompt("Address of RSET")
  9896         extra("struct typed_rset   *rset")
  8985         extra("struct typed_rset   *rset")
  9897         interest(4)
       
  9898         special(SPC_NOMOD)
       
  9899         prompt("Address of RSET")
       
  9900     }
  8986     }
  9901     field(DSET, DBF_NOACCESS) {
  8987     field(DSET, DBF_NOACCESS) {
       
  8988         special(SPC_NOMOD)
       
  8989         interest(4)
  9902         extra("struct dset         *dset")
  8990         extra("struct dset         *dset")
  9903         interest(4)
       
  9904         special(SPC_NOMOD)
       
  9905         prompt("DSET address")
  8991         prompt("DSET address")
  9906     }
  8992     }
  9907     field(DPVT, DBF_NOACCESS) {
  8993     field(DPVT, DBF_NOACCESS) {
       
  8994         special(SPC_NOMOD)
       
  8995         interest(4)
  9908         prompt("Device Private")
  8996         prompt("Device Private")
  9909         interest(4)
       
  9910         special(SPC_NOMOD)
       
  9911         extra("void                *dpvt")
  8997         extra("void                *dpvt")
  9912     }
  8998     }
  9913     field(RDES, DBF_NOACCESS) {
  8999     field(RDES, DBF_NOACCESS) {
  9914         interest(4)
  9000         interest(4)
  9915         special(SPC_NOMOD)
  9001         special(SPC_NOMOD)
  9916         prompt("Address of dbRecordType")
  9002         prompt("Address of dbRecordType")
  9917         extra("struct dbRecordType *rdes")
  9003         extra("struct dbRecordType *rdes")
  9918     }
  9004     }
  9919     field(LSET, DBF_NOACCESS) {
  9005     field(LSET, DBF_NOACCESS) {
       
  9006         special(SPC_NOMOD)
       
  9007         interest(4)
       
  9008         prompt("Lock Set")
  9920         extra("struct lockRecord   *lset")
  9009         extra("struct lockRecord   *lset")
  9921         prompt("Lock Set")
       
  9922         interest(4)
       
  9923         special(SPC_NOMOD)
       
  9924     }
  9010     }
  9925     field(PRIO, DBF_MENU) {
  9011     field(PRIO, DBF_MENU) {
  9926         interest(1)
  9012         prompt("Scheduling Priority")
       
  9013         promptgroup("20 - Scan")
  9927         special(SPC_SCAN)
  9014         special(SPC_SCAN)
  9928         promptgroup("20 - Scan")
       
  9929         prompt("Scheduling Priority")
       
  9930         menu(menuPriority)
  9015         menu(menuPriority)
       
  9016         interest(1)
  9931     }
  9017     }
  9932     field(TPRO, DBF_UCHAR) {
  9018     field(TPRO, DBF_UCHAR) {
  9933         prompt("Trace Processing")
  9019         prompt("Trace Processing")
  9934     }
  9020     }
  9935     field(BKPT, DBF_NOACCESS) {
  9021     field(BKPT, DBF_NOACCESS) {
       
  9022         special(SPC_NOMOD)
       
  9023         interest(1)
  9936         extra("char                bkpt")
  9024         extra("char                bkpt")
  9937         prompt("Break Point")
  9025         prompt("Break Point")
  9938         special(SPC_NOMOD)
       
  9939         interest(1)
       
  9940     }
  9026     }
  9941     field(UDF, DBF_UCHAR) {
  9027     field(UDF, DBF_UCHAR) {
       
  9028         promptgroup("10 - Common")
       
  9029         pp(TRUE)
       
  9030         interest(1)
  9942         prompt("Undefined")
  9031         prompt("Undefined")
  9943         promptgroup("10 - Common")
       
  9944         interest(1)
       
  9945         pp(TRUE)
       
  9946         initial("1")
  9032         initial("1")
  9947     }
  9033     }
  9948     field(UDFS, DBF_MENU) {
  9034     field(UDFS, DBF_MENU) {
       
  9035         interest(1)
       
  9036         menu(menuAlarmSevr)
       
  9037         promptgroup("70 - Alarm")
  9949         initial("INVALID")
  9038         initial("INVALID")
  9950         prompt("Undefined Alarm Sevrty")
  9039         prompt("Undefined Alarm Sevrty")
  9951         promptgroup("70 - Alarm")
       
  9952         interest(1)
       
  9953         menu(menuAlarmSevr)
       
  9954     }
  9040     }
  9955     field(TIME, DBF_NOACCESS) {
  9041     field(TIME, DBF_NOACCESS) {
  9956         extra("epicsTimeStamp      time")
  9042         extra("epicsTimeStamp      time")
  9957         interest(2)
       
  9958         special(SPC_NOMOD)
       
  9959         prompt("Time")
  9043         prompt("Time")
       
  9044         interest(2)
       
  9045         special(SPC_NOMOD)
  9960     }
  9046     }
  9961     field(FLNK, DBF_FWDLINK) {
  9047     field(FLNK, DBF_FWDLINK) {
  9962         prompt("Forward Process Link")
  9048         prompt("Forward Process Link")
  9963         promptgroup("20 - Scan")
  9049         interest(1)
  9964         interest(1)
  9050         promptgroup("20 - Scan")
  9965     }
  9051     }
  9966     field(VAL, DBF_LONG) {
  9052     field(VERS, DBF_DOUBLE) {
  9967         prompt("Current value")
  9053         initial("1")
  9968         promptgroup("40 - Input")
  9054         prompt("Code Version")
       
  9055         special(SPC_NOMOD)
       
  9056     }
       
  9057     field(RPVT, DBF_NOACCESS) {
       
  9058         prompt("Record Private")
       
  9059         extra("void *rpvt")
       
  9060         size(4)
       
  9061         interest(4)
       
  9062         special(SPC_NOMOD)
       
  9063     }
       
  9064     field(VAL, DBF_DOUBLE) {
  9969         asl(ASL0)
  9065         asl(ASL0)
  9970         pp(TRUE)
  9066         prompt("Result")
  9971     }
  9067     }
  9972     field(INP, DBF_INLINK) {
  9068     field(AVAL, DBF_NOACCESS) {
  9973         prompt("Input Specification")
  9069         prompt("Array Value")
  9974         interest(1)
  9070         asl(ASL0)
  9975         promptgroup("40 - Input")
  9071         extra("double *aval")
       
  9072         pp(TRUE)
       
  9073         special(SPC_DBADDR)
       
  9074     }
       
  9075     field(NELM, DBF_ULONG) {
       
  9076         prompt("Number of Elements")
       
  9077         initial("1")
       
  9078         promptgroup("30 - Action")
       
  9079         interest(1)
       
  9080         special(SPC_NOMOD)
       
  9081     }
       
  9082     field(NUSE, DBF_ULONG) {
       
  9083         promptgroup("30 - Action")
       
  9084         pp(TRUE)
       
  9085         special(SPC_MOD)
       
  9086         interest(1)
       
  9087         prompt("# elem's in use")
       
  9088         initial("0")
       
  9089     }
       
  9090     field(PVAL, DBF_DOUBLE) {
       
  9091         prompt("Previous Value")
       
  9092     }
       
  9093     field(PAVL, DBF_NOACCESS) {
       
  9094         pp(TRUE)
       
  9095         asl(ASL0)
       
  9096         extra("double *pavl")
       
  9097         prompt("Prev. Array Value")
       
  9098     }
       
  9099     field(CALC, DBF_STRING) {
       
  9100         prompt("Calculation")
       
  9101         size(80)
       
  9102         pp(TRUE)
       
  9103         promptgroup("30 - Action")
       
  9104         special(SPC_MOD)
       
  9105     }
       
  9106     field(CLCV, DBF_LONG) {
       
  9107         interest(1)
       
  9108         prompt("CALC Valid")
       
  9109     }
       
  9110     field(INPA, DBF_INLINK) {
       
  9111         prompt("Input A")
       
  9112         special(SPC_MOD)
       
  9113         interest(1)
       
  9114         promptgroup("30 - Action")
       
  9115     }
       
  9116     field(INPB, DBF_INLINK) {
       
  9117         prompt("Input B")
       
  9118         promptgroup("30 - Action")
       
  9119         interest(1)
       
  9120         special(SPC_MOD)
       
  9121     }
       
  9122     field(INPC, DBF_INLINK) {
       
  9123         prompt("Input C")
       
  9124         special(SPC_MOD)
       
  9125         interest(1)
       
  9126         promptgroup("30 - Action")
       
  9127     }
       
  9128     field(INPD, DBF_INLINK) {
       
  9129         special(SPC_MOD)
       
  9130         interest(1)
       
  9131         promptgroup("30 - Action")
       
  9132         prompt("Input D")
       
  9133     }
       
  9134     field(INPE, DBF_INLINK) {
       
  9135         prompt("Input E")
       
  9136         special(SPC_MOD)
       
  9137         interest(1)
       
  9138         promptgroup("30 - Action")
       
  9139     }
       
  9140     field(INPF, DBF_INLINK) {
       
  9141         prompt("Input F")
       
  9142         promptgroup("30 - Action")
       
  9143         special(SPC_MOD)
       
  9144         interest(1)
       
  9145     }
       
  9146     field(INPG, DBF_INLINK) {
       
  9147         interest(1)
       
  9148         special(SPC_MOD)
       
  9149         promptgroup("30 - Action")
       
  9150         prompt("Input G")
       
  9151     }
       
  9152     field(INPH, DBF_INLINK) {
       
  9153         interest(1)
       
  9154         special(SPC_MOD)
       
  9155         promptgroup("30 - Action")
       
  9156         prompt("Input H")
       
  9157     }
       
  9158     field(INPI, DBF_INLINK) {
       
  9159         special(SPC_MOD)
       
  9160         interest(1)
       
  9161         promptgroup("30 - Action")
       
  9162         prompt("Input I")
       
  9163     }
       
  9164     field(INPJ, DBF_INLINK) {
       
  9165         promptgroup("30 - Action")
       
  9166         special(SPC_MOD)
       
  9167         interest(1)
       
  9168         prompt("Input J")
       
  9169     }
       
  9170     field(INPK, DBF_INLINK) {
       
  9171         special(SPC_MOD)
       
  9172         interest(1)
       
  9173         promptgroup("30 - Action")
       
  9174         prompt("Input K")
       
  9175     }
       
  9176     field(INPL, DBF_INLINK) {
       
  9177         special(SPC_MOD)
       
  9178         interest(1)
       
  9179         promptgroup("30 - Action")
       
  9180         prompt("Input L")
       
  9181     }
       
  9182     field(INAA, DBF_INLINK) {
       
  9183         prompt("Array input AA")
       
  9184         promptgroup("30 - Action")
       
  9185         interest(1)
       
  9186         special(SPC_MOD)
       
  9187     }
       
  9188     field(INBB, DBF_INLINK) {
       
  9189         promptgroup("30 - Action")
       
  9190         interest(1)
       
  9191         special(SPC_MOD)
       
  9192         prompt("Array input BB")
       
  9193     }
       
  9194     field(INCC, DBF_INLINK) {
       
  9195         interest(1)
       
  9196         special(SPC_MOD)
       
  9197         promptgroup("30 - Action")
       
  9198         prompt("Array input CC")
       
  9199     }
       
  9200     field(INDD, DBF_INLINK) {
       
  9201         promptgroup("30 - Action")
       
  9202         interest(1)
       
  9203         special(SPC_MOD)
       
  9204         prompt("Array input DD")
       
  9205     }
       
  9206     field(INEE, DBF_INLINK) {
       
  9207         prompt("Array input EE")
       
  9208         interest(1)
       
  9209         special(SPC_MOD)
       
  9210         promptgroup("30 - Action")
       
  9211     }
       
  9212     field(INFF, DBF_INLINK) {
       
  9213         interest(1)
       
  9214         special(SPC_MOD)
       
  9215         promptgroup("30 - Action")
       
  9216         prompt("Array input FF")
       
  9217     }
       
  9218     field(INGG, DBF_INLINK) {
       
  9219         prompt("Array input GG")
       
  9220         promptgroup("30 - Action")
       
  9221         interest(1)
       
  9222         special(SPC_MOD)
       
  9223     }
       
  9224     field(INHH, DBF_INLINK) {
       
  9225         prompt("Array input HH")
       
  9226         promptgroup("30 - Action")
       
  9227         special(SPC_MOD)
       
  9228         interest(1)
       
  9229     }
       
  9230     field(INII, DBF_INLINK) {
       
  9231         prompt("Array input II")
       
  9232         promptgroup("30 - Action")
       
  9233         special(SPC_MOD)
       
  9234         interest(1)
       
  9235     }
       
  9236     field(INJJ, DBF_INLINK) {
       
  9237         prompt("Array input JJ")
       
  9238         promptgroup("30 - Action")
       
  9239         special(SPC_MOD)
       
  9240         interest(1)
       
  9241     }
       
  9242     field(INKK, DBF_INLINK) {
       
  9243         interest(1)
       
  9244         special(SPC_MOD)
       
  9245         promptgroup("30 - Action")
       
  9246         prompt("Array input KK")
       
  9247     }
       
  9248     field(INLL, DBF_INLINK) {
       
  9249         promptgroup("30 - Action")
       
  9250         interest(1)
       
  9251         special(SPC_MOD)
       
  9252         prompt("Array input LL")
       
  9253     }
       
  9254     field(OUT, DBF_OUTLINK) {
       
  9255         promptgroup("50 - Output")
       
  9256         interest(1)
       
  9257         special(SPC_MOD)
       
  9258         prompt("Output Link")
       
  9259     }
       
  9260     field(INAV, DBF_MENU) {
       
  9261         menu(acalcoutINAV)
       
  9262         interest(1)
       
  9263         special(SPC_NOMOD)
       
  9264         initial("1")
       
  9265         prompt("INPA PV Status")
       
  9266     }
       
  9267     field(INBV, DBF_MENU) {
       
  9268         interest(1)
       
  9269         menu(acalcoutINAV)
       
  9270         special(SPC_NOMOD)
       
  9271         initial("1")
       
  9272         prompt("INPB PV Status")
       
  9273     }
       
  9274     field(INCV, DBF_MENU) {
       
  9275         interest(1)
       
  9276         menu(acalcoutINAV)
       
  9277         special(SPC_NOMOD)
       
  9278         prompt("INPC PV Status")
       
  9279         initial("1")
       
  9280     }
       
  9281     field(INDV, DBF_MENU) {
       
  9282         prompt("INPD PV Status")
       
  9283         initial("1")
       
  9284         interest(1)
       
  9285         menu(acalcoutINAV)
       
  9286         special(SPC_NOMOD)
       
  9287     }
       
  9288     field(INEV, DBF_MENU) {
       
  9289         special(SPC_NOMOD)
       
  9290         interest(1)
       
  9291         menu(acalcoutINAV)
       
  9292         prompt("INPE PV Status")
       
  9293         initial("1")
       
  9294     }
       
  9295     field(INFV, DBF_MENU) {
       
  9296         special(SPC_NOMOD)
       
  9297         interest(1)
       
  9298         menu(acalcoutINAV)
       
  9299         initial("1")
       
  9300         prompt("INPF PV Status")
       
  9301     }
       
  9302     field(INGV, DBF_MENU) {
       
  9303         prompt("INPG PV Status")
       
  9304         initial("1")
       
  9305         interest(1)
       
  9306         menu(acalcoutINAV)
       
  9307         special(SPC_NOMOD)
       
  9308     }
       
  9309     field(INHV, DBF_MENU) {
       
  9310         initial("1")
       
  9311         prompt("INPH PV Status")
       
  9312         interest(1)
       
  9313         menu(acalcoutINAV)
       
  9314         special(SPC_NOMOD)
       
  9315     }
       
  9316     field(INIV, DBF_MENU) {
       
  9317         special(SPC_NOMOD)
       
  9318         interest(1)
       
  9319         menu(acalcoutINAV)
       
  9320         prompt("INPI PV Status")
       
  9321         initial("1")
       
  9322     }
       
  9323     field(INJV, DBF_MENU) {
       
  9324         interest(1)
       
  9325         menu(acalcoutINAV)
       
  9326         special(SPC_NOMOD)
       
  9327         initial("1")
       
  9328         prompt("INPJ PV Status")
       
  9329     }
       
  9330     field(INKV, DBF_MENU) {
       
  9331         interest(1)
       
  9332         menu(acalcoutINAV)
       
  9333         special(SPC_NOMOD)
       
  9334         initial("1")
       
  9335         prompt("INPK PV Status")
       
  9336     }
       
  9337     field(INLV, DBF_MENU) {
       
  9338         interest(1)
       
  9339         menu(acalcoutINAV)
       
  9340         special(SPC_NOMOD)
       
  9341         prompt("INPL PV Status")
       
  9342         initial("1")
       
  9343     }
       
  9344     field(IAAV, DBF_MENU) {
       
  9345         initial("1")
       
  9346         prompt("INAA PV Status")
       
  9347         menu(acalcoutINAV)
       
  9348         interest(1)
       
  9349         special(SPC_NOMOD)
       
  9350     }
       
  9351     field(IBBV, DBF_MENU) {
       
  9352         initial("1")
       
  9353         prompt("INBB PV Status")
       
  9354         interest(1)
       
  9355         menu(acalcoutINAV)
       
  9356         special(SPC_NOMOD)
       
  9357     }
       
  9358     field(ICCV, DBF_MENU) {
       
  9359         initial("1")
       
  9360         prompt("INCC PV Status")
       
  9361         special(SPC_NOMOD)
       
  9362         interest(1)
       
  9363         menu(acalcoutINAV)
       
  9364     }
       
  9365     field(IDDV, DBF_MENU) {
       
  9366         menu(acalcoutINAV)
       
  9367         interest(1)
       
  9368         special(SPC_NOMOD)
       
  9369         initial("1")
       
  9370         prompt("INDD PV Status")
       
  9371     }
       
  9372     field(IEEV, DBF_MENU) {
       
  9373         prompt("INEE PV Status")
       
  9374         initial("1")
       
  9375         special(SPC_NOMOD)
       
  9376         interest(1)
       
  9377         menu(acalcoutINAV)
       
  9378     }
       
  9379     field(IFFV, DBF_MENU) {
       
  9380         special(SPC_NOMOD)
       
  9381         interest(1)
       
  9382         menu(acalcoutINAV)
       
  9383         prompt("INFF PV Status")
       
  9384         initial("1")
       
  9385     }
       
  9386     field(IGGV, DBF_MENU) {
       
  9387         initial("1")
       
  9388         prompt("INGG PV Status")
       
  9389         special(SPC_NOMOD)
       
  9390         menu(acalcoutINAV)
       
  9391         interest(1)
       
  9392     }
       
  9393     field(IHHV, DBF_MENU) {
       
  9394         initial("1")
       
  9395         prompt("INHH PV Status")
       
  9396         interest(1)
       
  9397         menu(acalcoutINAV)
       
  9398         special(SPC_NOMOD)
       
  9399     }
       
  9400     field(IIIV, DBF_MENU) {
       
  9401         prompt("INII PV Status")
       
  9402         initial("1")
       
  9403         menu(acalcoutINAV)
       
  9404         interest(1)
       
  9405         special(SPC_NOMOD)
       
  9406     }
       
  9407     field(IJJV, DBF_MENU) {
       
  9408         prompt("INJJ PV Status")
       
  9409         initial("1")
       
  9410         special(SPC_NOMOD)
       
  9411         menu(acalcoutINAV)
       
  9412         interest(1)
       
  9413     }
       
  9414     field(IKKV, DBF_MENU) {
       
  9415         special(SPC_NOMOD)
       
  9416         menu(acalcoutINAV)
       
  9417         interest(1)
       
  9418         prompt("INKK PV Status")
       
  9419         initial("1")
       
  9420     }
       
  9421     field(ILLV, DBF_MENU) {
       
  9422         special(SPC_NOMOD)
       
  9423         menu(acalcoutINAV)
       
  9424         interest(1)
       
  9425         prompt("INLL PV Status")
       
  9426         initial("1")
       
  9427     }
       
  9428     field(OUTV, DBF_MENU) {
       
  9429         prompt("OUT PV Status")
       
  9430         menu(acalcoutINAV)
       
  9431         interest(1)
       
  9432         special(SPC_NOMOD)
       
  9433     }
       
  9434     field(OOPT, DBF_MENU) {
       
  9435         prompt("Output Execute Opt")
       
  9436         menu(acalcoutOOPT)
       
  9437         interest(1)
       
  9438         promptgroup("30 - Action")
       
  9439     }
       
  9440     field(ODLY, DBF_DOUBLE) {
       
  9441         prompt("Output Execute Delay")
       
  9442         asl(ASL0)
       
  9443         promptgroup("70 - Alarm")
       
  9444         interest(1)
       
  9445     }
       
  9446     field(WAIT, DBF_MENU) {
       
  9447         prompt("Wait for completion?")
       
  9448         interest(1)
       
  9449         menu(acalcoutWAIT)
       
  9450     }
       
  9451     field(DLYA, DBF_USHORT) {
       
  9452         prompt("Output Delay Active")
       
  9453         asl(ASL0)
       
  9454         special(SPC_NOMOD)
       
  9455     }
       
  9456     field(DOPT, DBF_MENU) {
       
  9457         promptgroup("30 - Action")
       
  9458         interest(1)
       
  9459         menu(acalcoutDOPT)
       
  9460         prompt("Output Data Opt")
       
  9461     }
       
  9462     field(OCAL, DBF_STRING) {
       
  9463         prompt("Output Calculation")
       
  9464         size(80)
       
  9465         promptgroup("30 - Action")
       
  9466         pp(TRUE)
       
  9467         special(SPC_MOD)
       
  9468     }
       
  9469     field(OCLV, DBF_LONG) {
       
  9470         interest(1)
       
  9471         prompt("OCAL Valid")
       
  9472     }
       
  9473     field(OEVT, DBF_USHORT) {
       
  9474         promptgroup("30 - Action")
       
  9475         asl(ASL0)
       
  9476         prompt("Event To Issue")
       
  9477     }
       
  9478     field(IVOA, DBF_MENU) {
       
  9479         prompt("INVALID output action")
       
  9480         promptgroup("50 - Output")
       
  9481         interest(2)
       
  9482         menu(menuIvoa)
       
  9483     }
       
  9484     field(IVOV, DBF_DOUBLE) {
       
  9485         prompt("INVALID output value")
       
  9486         promptgroup("50 - Output")
       
  9487         interest(2)
  9976     }
  9488     }
  9977     field(EGU, DBF_STRING) {
  9489     field(EGU, DBF_STRING) {
  9978         prompt("Engineering Units")
       
  9979         prop(YES)
       
  9980         interest(1)
  9490         interest(1)
  9981         promptgroup("80 - Display")
  9491         promptgroup("80 - Display")
  9982         size(16)
  9492         size(16)
  9983     }
  9493         prompt("Units Name")
  9984     field(HOPR, DBF_LONG) {
  9494     }
  9985         prop(YES)
  9495     field(PREC, DBF_SHORT) {
       
  9496         interest(1)
  9986         promptgroup("80 - Display")
  9497         promptgroup("80 - Display")
  9987         interest(1)
  9498         prompt("Display Precision")
  9988         prompt("High Operating Range")
  9499     }
  9989     }
  9500     field(HOPR, DBF_DOUBLE) {
  9990     field(LOPR, DBF_LONG) {
  9501         prompt("High Operating Rng")
       
  9502         promptgroup("80 - Display")
       
  9503         interest(1)
       
  9504     }
       
  9505     field(LOPR, DBF_DOUBLE) {
  9991         prompt("Low Operating Range")
  9506         prompt("Low Operating Range")
  9992         prop(YES)
       
  9993         interest(1)
       
  9994         promptgroup("80 - Display")
  9507         promptgroup("80 - Display")
  9995     }
  9508         interest(1)
  9996     field(HIHI, DBF_LONG) {
  9509     }
  9997         pp(TRUE)
  9510     field(HIHI, DBF_DOUBLE) {
  9998         promptgroup("70 - Alarm")
       
  9999         prop(YES)
       
 10000         interest(1)
       
 10001         prompt("Hihi Alarm Limit")
  9511         prompt("Hihi Alarm Limit")
 10002     }
  9512         interest(1)
 10003     field(LOLO, DBF_LONG) {
  9513         promptgroup("70 - Alarm")
 10004         prop(YES)
  9514         pp(TRUE)
 10005         interest(1)
  9515     }
 10006         promptgroup("70 - Alarm")
  9516     field(LOLO, DBF_DOUBLE) {
 10007         prompt("Lolo Alarm Limit")
  9517         prompt("Lolo Alarm Limit")
 10008         pp(TRUE)
  9518         pp(TRUE)
 10009     }
  9519         promptgroup("70 - Alarm")
 10010     field(HIGH, DBF_LONG) {
  9520         interest(1)
 10011         pp(TRUE)
  9521     }
 10012         prop(YES)
  9522     field(HIGH, DBF_DOUBLE) {
 10013         promptgroup("70 - Alarm")
  9523         promptgroup("70 - Alarm")
       
  9524         pp(TRUE)
 10014         interest(1)
  9525         interest(1)
 10015         prompt("High Alarm Limit")
  9526         prompt("High Alarm Limit")
 10016     }
  9527     }
 10017     field(LOW, DBF_LONG) {
  9528     field(LOW, DBF_DOUBLE) {
       
  9529         interest(1)
       
  9530         promptgroup("70 - Alarm")
 10018         pp(TRUE)
  9531         pp(TRUE)
 10019         prompt("Low Alarm Limit")
  9532         prompt("Low Alarm Limit")
 10020         promptgroup("70 - Alarm")
       
 10021         prop(YES)
       
 10022         interest(1)
       
 10023     }
  9533     }
 10024     field(HHSV, DBF_MENU) {
  9534     field(HHSV, DBF_MENU) {
 10025         pp(TRUE)
  9535         interest(1)
 10026         menu(menuAlarmSevr)
  9536         menu(menuAlarmSevr)
       
  9537         pp(TRUE)
       
  9538         promptgroup("70 - Alarm")
 10027         prompt("Hihi Severity")
  9539         prompt("Hihi Severity")
 10028         promptgroup("70 - Alarm")
       
 10029         interest(1)
       
 10030     }
  9540     }
 10031     field(LLSV, DBF_MENU) {
  9541     field(LLSV, DBF_MENU) {
 10032         menu(menuAlarmSevr)
  9542         pp(TRUE)
 10033         promptgroup("70 - Alarm")
  9543         promptgroup("70 - Alarm")
 10034         interest(1)
  9544         interest(1)
       
  9545         menu(menuAlarmSevr)
 10035         prompt("Lolo Severity")
  9546         prompt("Lolo Severity")
 10036         pp(TRUE)
       
 10037     }
  9547     }
 10038     field(HSV, DBF_MENU) {
  9548     field(HSV, DBF_MENU) {
 10039         menu(menuAlarmSevr)
       
 10040         interest(1)
       
 10041         promptgroup("70 - Alarm")
       
 10042         prompt("High Severity")
  9549         prompt("High Severity")
 10043         pp(TRUE)
  9550         interest(1)
       
  9551         menu(menuAlarmSevr)
       
  9552         pp(TRUE)
       
  9553         promptgroup("70 - Alarm")
 10044     }
  9554     }
 10045     field(LSV, DBF_MENU) {
  9555     field(LSV, DBF_MENU) {
 10046         pp(TRUE)
       
 10047         menu(menuAlarmSevr)
       
 10048         promptgroup("70 - Alarm")
       
 10049         interest(1)
       
 10050         prompt("Low Severity")
  9556         prompt("Low Severity")
 10051     }
  9557         menu(menuAlarmSevr)
 10052     field(HYST, DBF_LONG) {
  9558         interest(1)
 10053         interest(1)
  9559         pp(TRUE)
 10054         promptgroup("70 - Alarm")
  9560         promptgroup("70 - Alarm")
       
  9561     }
       
  9562     field(HYST, DBF_DOUBLE) {
 10055         prompt("Alarm Deadband")
  9563         prompt("Alarm Deadband")
 10056     }
  9564         interest(1)
 10057     field(AFTC, DBF_DOUBLE) {
  9565         promptgroup("70 - Alarm")
 10058         interest(1)
  9566     }
 10059         promptgroup("70 - Alarm")
  9567     field(ADEL, DBF_DOUBLE) {
 10060         prompt("Alarm Filter Time Constant")
  9568         interest(1)
 10061     }
       
 10062     field(AFVL, DBF_DOUBLE) {
       
 10063         prompt("Alarm Filter Value")
       
 10064         interest(3)
       
 10065         special(SPC_NOMOD)
       
 10066     }
       
 10067     field(ADEL, DBF_LONG) {
       
 10068         promptgroup("80 - Display")
  9569         promptgroup("80 - Display")
 10069         interest(1)
       
 10070         prompt("Archive Deadband")
  9570         prompt("Archive Deadband")
 10071     }
  9571     }
 10072     field(MDEL, DBF_LONG) {
  9572     field(MDEL, DBF_DOUBLE) {
       
  9573         promptgroup("80 - Display")
       
  9574         interest(1)
 10073         prompt("Monitor Deadband")
  9575         prompt("Monitor Deadband")
 10074         interest(1)
  9576     }
 10075         promptgroup("80 - Display")
  9577     field(A, DBF_DOUBLE) {
 10076     }
  9578         pp(TRUE)
 10077     field(LALM, DBF_LONG) {
  9579         prompt("Value of Input A")
       
  9580     }
       
  9581     field(B, DBF_DOUBLE) {
       
  9582         pp(TRUE)
       
  9583         prompt("Value of Input B")
       
  9584     }
       
  9585     field(C, DBF_DOUBLE) {
       
  9586         prompt("Value of Input C")
       
  9587         pp(TRUE)
       
  9588     }
       
  9589     field(D, DBF_DOUBLE) {
       
  9590         pp(TRUE)
       
  9591         prompt("Value of Input D")
       
  9592     }
       
  9593     field(E, DBF_DOUBLE) {
       
  9594         prompt("Value of Input E")
       
  9595         pp(TRUE)
       
  9596     }
       
  9597     field(F, DBF_DOUBLE) {
       
  9598         pp(TRUE)
       
  9599         prompt("Value of Input F")
       
  9600     }
       
  9601     field(G, DBF_DOUBLE) {
       
  9602         prompt("Value of Input G")
       
  9603         pp(TRUE)
       
  9604     }
       
  9605     field(H, DBF_DOUBLE) {
       
  9606         prompt("Value of Input H")
       
  9607         pp(TRUE)
       
  9608     }
       
  9609     field(I, DBF_DOUBLE) {
       
  9610         prompt("Value of Input I")
       
  9611         pp(TRUE)
       
  9612     }
       
  9613     field(J, DBF_DOUBLE) {
       
  9614         prompt("Value of Input J")
       
  9615         pp(TRUE)
       
  9616     }
       
  9617     field(K, DBF_DOUBLE) {
       
  9618         pp(TRUE)
       
  9619         prompt("Value of Input K")
       
  9620     }
       
  9621     field(L, DBF_DOUBLE) {
       
  9622         prompt("Value of Input L")
       
  9623         pp(TRUE)
       
  9624     }
       
  9625     field(AA, DBF_NOACCESS) {
       
  9626         asl(ASL0)
       
  9627         extra("double *aa")
       
  9628         prompt("Value of array input")
       
  9629         special(SPC_DBADDR)
       
  9630         pp(TRUE)
       
  9631     }
       
  9632     field(BB, DBF_NOACCESS) {
       
  9633         pp(TRUE)
       
  9634         special(SPC_DBADDR)
       
  9635         prompt("Value of array input")
       
  9636         extra("double *bb")
       
  9637         asl(ASL0)
       
  9638     }
       
  9639     field(CC, DBF_NOACCESS) {
       
  9640         pp(TRUE)
       
  9641         special(SPC_DBADDR)
       
  9642         prompt("Value of array input")
       
  9643         extra("double *cc")
       
  9644         asl(ASL0)
       
  9645     }
       
  9646     field(DD, DBF_NOACCESS) {
       
  9647         asl(ASL0)
       
  9648         extra("double *dd")
       
  9649         prompt("Value of array input")
       
  9650         special(SPC_DBADDR)
       
  9651         pp(TRUE)
       
  9652     }
       
  9653     field(EE, DBF_NOACCESS) {
       
  9654         pp(TRUE)
       
  9655         special(SPC_DBADDR)
       
  9656         prompt("Value of array input")
       
  9657         extra("double *ee")
       
  9658         asl(ASL0)
       
  9659     }
       
  9660     field(FF, DBF_NOACCESS) {
       
  9661         special(SPC_DBADDR)
       
  9662         pp(TRUE)
       
  9663         extra("double *ff")
       
  9664         asl(ASL0)
       
  9665         prompt("Value of array input")
       
  9666     }
       
  9667     field(GG, DBF_NOACCESS) {
       
  9668         pp(TRUE)
       
  9669         special(SPC_DBADDR)
       
  9670         prompt("Value of array input")
       
  9671         asl(ASL0)
       
  9672         extra("double *gg")
       
  9673     }
       
  9674     field(HH, DBF_NOACCESS) {
       
  9675         prompt("Value of array input")
       
  9676         extra("double *hh")
       
  9677         asl(ASL0)
       
  9678         pp(TRUE)
       
  9679         special(SPC_DBADDR)
       
  9680     }
       
  9681     field(II, DBF_NOACCESS) {
       
  9682         extra("double *ii")
       
  9683         asl(ASL0)
       
  9684         prompt("Value of array input")
       
  9685         special(SPC_DBADDR)
       
  9686         pp(TRUE)
       
  9687     }
       
  9688     field(JJ, DBF_NOACCESS) {
       
  9689         pp(TRUE)
       
  9690         special(SPC_DBADDR)
       
  9691         prompt("Value of array input")
       
  9692         extra("double *jj")
       
  9693         asl(ASL0)
       
  9694     }
       
  9695     field(KK, DBF_NOACCESS) {
       
  9696         special(SPC_DBADDR)
       
  9697         pp(TRUE)
       
  9698         asl(ASL0)
       
  9699         extra("double *kk")
       
  9700         prompt("Value of array input")
       
  9701     }
       
  9702     field(LL, DBF_NOACCESS) {
       
  9703         pp(TRUE)
       
  9704         special(SPC_DBADDR)
       
  9705         prompt("Value of array input")
       
  9706         extra("double *ll")
       
  9707         asl(ASL0)
       
  9708     }
       
  9709     field(PAA, DBF_NOACCESS) {
       
  9710         asl(ASL0)
       
  9711         extra("double *paa")
       
  9712         prompt("Prev Val of array input")
       
  9713     }
       
  9714     field(NEWM, DBF_ULONG) {
       
  9715         special(SPC_NOMOD)
       
  9716         asl(ASL0)
       
  9717         prompt("new array value mask")
       
  9718     }
       
  9719     field(OVAL, DBF_DOUBLE) {
       
  9720         asl(ASL0)
       
  9721         prompt("Output Value")
       
  9722     }
       
  9723     field(OAV, DBF_NOACCESS) {
       
  9724         pp(TRUE)
       
  9725         special(SPC_DBADDR)
       
  9726         prompt("Output array value")
       
  9727         asl(ASL0)
       
  9728         extra("double *oav")
       
  9729     }
       
  9730     field(POAV, DBF_NOACCESS) {
       
  9731         pp(TRUE)
       
  9732         asl(ASL0)
       
  9733         extra("double *poav")
       
  9734         prompt("Output array value")
       
  9735     }
       
  9736     field(PA, DBF_DOUBLE) {
       
  9737         interest(3)
       
  9738         special(SPC_NOMOD)
       
  9739         prompt("Prev Value of A")
       
  9740     }
       
  9741     field(PB, DBF_DOUBLE) {
       
  9742         interest(3)
       
  9743         special(SPC_NOMOD)
       
  9744         prompt("Prev Value of B")
       
  9745     }
       
  9746     field(PC, DBF_DOUBLE) {
       
  9747         special(SPC_NOMOD)
       
  9748         interest(3)
       
  9749         prompt("Prev Value of C")
       
  9750     }
       
  9751     field(PD, DBF_DOUBLE) {
       
  9752         special(SPC_NOMOD)
       
  9753         interest(3)
       
  9754         prompt("Prev Value of D")
       
  9755     }
       
  9756     field(PE, DBF_DOUBLE) {
       
  9757         prompt("Prev Value of E")
       
  9758         special(SPC_NOMOD)
       
  9759         interest(3)
       
  9760     }
       
  9761     field(PF, DBF_DOUBLE) {
       
  9762         special(SPC_NOMOD)
       
  9763         interest(3)
       
  9764         prompt("Prev Value of F")
       
  9765     }
       
  9766     field(PG, DBF_DOUBLE) {
       
  9767         prompt("Prev Value of G")
       
  9768         special(SPC_NOMOD)
       
  9769         interest(3)
       
  9770     }
       
  9771     field(PH, DBF_DOUBLE) {
       
  9772         prompt("Prev Value of H")
       
  9773         interest(3)
       
  9774         special(SPC_NOMOD)
       
  9775     }
       
  9776     field(PI, DBF_DOUBLE) {
       
  9777         interest(3)
       
  9778         special(SPC_NOMOD)
       
  9779         prompt("Prev Value of I")
       
  9780     }
       
  9781     field(PJ, DBF_DOUBLE) {
       
  9782         interest(3)
       
  9783         special(SPC_NOMOD)
       
  9784         prompt("Prev Value of J")
       
  9785     }
       
  9786     field(PK, DBF_DOUBLE) {
       
  9787         prompt("Prev Value of K")
       
  9788         interest(3)
       
  9789         special(SPC_NOMOD)
       
  9790     }
       
  9791     field(PL, DBF_DOUBLE) {
       
  9792         prompt("Prev Value of L")
       
  9793         special(SPC_NOMOD)
       
  9794         interest(3)
       
  9795     }
       
  9796     field(POVL, DBF_DOUBLE) {
       
  9797         prompt("Prev Value of OVAL")
       
  9798         asl(ASL0)
       
  9799     }
       
  9800     field(LALM, DBF_DOUBLE) {
 10078         prompt("Last Value Alarmed")
  9801         prompt("Last Value Alarmed")
 10079         interest(3)
  9802         special(SPC_NOMOD)
 10080         special(SPC_NOMOD)
  9803         interest(3)
 10081     }
  9804     }
 10082     field(ALST, DBF_LONG) {
  9805     field(ALST, DBF_DOUBLE) {
 10083         interest(3)
       
 10084         special(SPC_NOMOD)
       
 10085         prompt("Last Value Archived")
  9806         prompt("Last Value Archived")
 10086     }
  9807         special(SPC_NOMOD)
 10087     field(MLST, DBF_LONG) {
  9808         interest(3)
 10088         interest(3)
  9809     }
 10089         special(SPC_NOMOD)
  9810     field(MLST, DBF_DOUBLE) {
 10090         prompt("Last Val Monitored")
  9811         prompt("Last Val Monitored")
 10091     }
  9812         special(SPC_NOMOD)
 10092     field(SIOL, DBF_INLINK) {
  9813         interest(3)
 10093         interest(1)
  9814     }
 10094         promptgroup("90 - Simulate")
  9815     field(RPCL, DBF_NOACCESS) {
 10095         prompt("Simulation Input Link")
  9816         prompt("Reverse Polish Calc")
 10096     }
  9817         extra("unsigned char rpcl[282]")
 10097     field(SVAL, DBF_LONG) {
  9818         interest(4)
 10098         prompt("Simulation Value")
  9819         special(SPC_NOMOD)
 10099     }
  9820     }
 10100     field(SIML, DBF_INLINK) {
  9821     field(ORPC, DBF_NOACCESS) {
 10101         prompt("Simulation Mode Link")
  9822         extra("unsigned char orpc[282]")
 10102         promptgroup("90 - Simulate")
  9823         prompt("Reverse Polish OCalc")
 10103         interest(1)
  9824         special(SPC_NOMOD)
 10104     }
  9825         interest(4)
 10105     field(SIMM, DBF_MENU) {
  9826     }
 10106         menu(menuYesNo)
  9827     field(CACT, DBF_UCHAR) {
 10107         prompt("Simulation Mode")
  9828         prompt("Calc active")
 10108         interest(1)
  9829         special(SPC_NOMOD)
 10109         special(SPC_MOD)
  9830         interest(1)
 10110     }
  9831     }
 10111     field(SIMS, DBF_MENU) {
  9832     field(CSTAT, DBF_LONG) {
 10112         interest(2)
  9833         interest(1)
 10113         promptgroup("90 - Simulate")
  9834         special(SPC_NOMOD)
 10114         prompt("Simulation Mode Severity")
  9835         prompt("Calc status")
 10115         menu(menuAlarmSevr)
  9836     }
 10116     }
  9837     field(AMASK, DBF_ULONG) {
 10117     field(OLDSIMM, DBF_MENU) {
  9838         interest(1)
 10118         prompt("Prev. Simulation Mode")
  9839         special(SPC_NOMOD)
 10119         special(SPC_NOMOD)
  9840         prompt("Array mod")
 10120         interest(4)
  9841     }
 10121         menu(menuSimm)
  9842     field(SIZE, DBF_MENU) {
 10122     }
  9843         prompt("Array size reported to clients")
 10123     field(SSCN, DBF_MENU) {
  9844         menu(acalcoutSIZE)
 10124         initial("65535")
  9845         interest(1)
 10125         promptgroup("90 - Simulate")
  9846     }
 10126         interest(1)
  9847     field(AMEM, DBF_LONG) {
 10127         prompt("Sim. Mode Scan")
  9848         interest(1)
 10128         menu(menuScan)
  9849         special(SPC_NOMOD)
 10129     }
  9850         prompt("Allocated array memory")
 10130     field(SDLY, DBF_DOUBLE) {
  9851     }
 10131         initial("-1.0")
  9852     field(PMEM, DBF_LONG) {
 10132         promptgroup("90 - Simulate")
  9853         prompt("Prev array memory")
 10133         interest(2)
  9854         interest(1)
 10134         prompt("Sim. Mode Async Delay")
       
 10135     }
       
 10136     field(SIMPVT, DBF_NOACCESS) {
       
 10137         extra("CALLBACK            *simpvt")
       
 10138         prompt("Sim. Mode Private")
       
 10139         interest(4)
       
 10140         special(SPC_NOMOD)
  9855         special(SPC_NOMOD)
 10141     }
  9856     }
 10142 }
  9857 }
 10143 device(longin, CONSTANT, devLiSoft, "Soft Channel")
  9858 device(acalcout, CONSTANT, devaCalcoutSoft, "Soft Channel")
 10144 device(longin, CONSTANT, devLiSoftCallback, "Async Soft Channel")
       
 10145 device(longin, INST_IO, devLiGeneralTime, "General Time")
       
 10146 device(longin, INST_IO, asynLiInt32, "asynInt32")
       
 10147 device(longin, INST_IO, asynLiUInt32Digital, "asynUInt32Digital")
       
 10148 device(longin, INST_IO, devlonginStream, "stream")
       
 10149 device(longin, INST_IO, devLiStrParm, "asyn li stringParm")
       
 10150 recordtype(waveform) {
  9859 recordtype(waveform) {
 10151     %#include "epicsTypes.h"
  9860     %#include "epicsTypes.h"
 10152     %#include "link.h"
  9861     %#include "link.h"
 10153     %#include "epicsMutex.h"
  9862     %#include "epicsMutex.h"
 10154     %#include "ellLib.h"
  9863     %#include "ellLib.h"
 10155     %#include "epicsTime.h"
  9864     %#include "epicsTime.h"
 10156     %#include "callback.h"
  9865     %#include "callback.h"
 10157     field(NAME, DBF_STRING) {
  9866     field(NAME, DBF_STRING) {
       
  9867         special(SPC_NOMOD)
       
  9868         prompt("Record Name")
 10158         size(61)
  9869         size(61)
 10159         special(SPC_NOMOD)
       
 10160         prompt("Record Name")
       
 10161     }
  9870     }
 10162     field(DESC, DBF_STRING) {
  9871     field(DESC, DBF_STRING) {
 10163         promptgroup("10 - Common")
  9872         size(41)
 10164         prompt("Descriptor")
  9873         prompt("Descriptor")
 10165         size(41)
  9874         promptgroup("10 - Common")
 10166     }
  9875     }
 10167     field(ASG, DBF_STRING) {
  9876     field(ASG, DBF_STRING) {
       
  9877         special(SPC_AS)
       
  9878         promptgroup("10 - Common")
       
  9879         size(29)
 10168         prompt("Access Security Group")
  9880         prompt("Access Security Group")
 10169         special(SPC_AS)
       
 10170         promptgroup("10 - Common")
       
 10171         size(29)
       
 10172     }
  9881     }
 10173     field(SCAN, DBF_MENU) {
  9882     field(SCAN, DBF_MENU) {
       
  9883         prompt("Scan Mechanism")
       
  9884         promptgroup("20 - Scan")
       
  9885         interest(1)
 10174         menu(menuScan)
  9886         menu(menuScan)
 10175         interest(1)
       
 10176         promptgroup("20 - Scan")
       
 10177         special(SPC_SCAN)
  9887         special(SPC_SCAN)
 10178         prompt("Scan Mechanism")
       
 10179     }
  9888     }
 10180     field(PINI, DBF_MENU) {
  9889     field(PINI, DBF_MENU) {
       
  9890         menu(menuPini)
 10181         interest(1)
  9891         interest(1)
 10182         promptgroup("20 - Scan")
  9892         promptgroup("20 - Scan")
 10183         prompt("Process at iocInit")
  9893         prompt("Process at iocInit")
 10184         menu(menuPini)
       
 10185     }
  9894     }
 10186     field(PHAS, DBF_SHORT) {
  9895     field(PHAS, DBF_SHORT) {
       
  9896         prompt("Scan Phase")
 10187         special(SPC_SCAN)
  9897         special(SPC_SCAN)
 10188         interest(1)
  9898         interest(1)
 10189         promptgroup("20 - Scan")
  9899         promptgroup("20 - Scan")
 10190         prompt("Scan Phase")
       
 10191     }
  9900     }
 10192     field(EVNT, DBF_STRING) {
  9901     field(EVNT, DBF_STRING) {
       
  9902         size(40)
 10193         prompt("Event Name")
  9903         prompt("Event Name")
 10194         interest(1)
  9904         interest(1)
 10195         promptgroup("20 - Scan")
       
 10196         special(SPC_SCAN)
  9905         special(SPC_SCAN)
 10197         size(40)
  9906         promptgroup("20 - Scan")
 10198     }
  9907     }
 10199     field(TSE, DBF_SHORT) {
  9908     field(TSE, DBF_SHORT) {
       
  9909         interest(1)
       
  9910         promptgroup("20 - Scan")
 10200         prompt("Time Stamp Event")
  9911         prompt("Time Stamp Event")
 10201         interest(1)
       
 10202         promptgroup("20 - Scan")
       
 10203     }
  9912     }
 10204     field(TSEL, DBF_INLINK) {
  9913     field(TSEL, DBF_INLINK) {
 10205         promptgroup("20 - Scan")
       
 10206         interest(1)
       
 10207         prompt("Time Stamp Link")
  9914         prompt("Time Stamp Link")
       
  9915         interest(1)
       
  9916         promptgroup("20 - Scan")
 10208     }
  9917     }
 10209     field(DTYP, DBF_DEVICE) {
  9918     field(DTYP, DBF_DEVICE) {
 10210         promptgroup("10 - Common")
  9919         interest(1)
 10211         interest(1)
  9920         promptgroup("10 - Common")
 10212         prompt("Device Type")
  9921         prompt("Device Type")
 10213     }
  9922     }
 10214     field(DISV, DBF_SHORT) {
  9923     field(DISV, DBF_SHORT) {
 10215         initial("1")
       
 10216         prompt("Disable Value")
  9924         prompt("Disable Value")
       
  9925         initial("1")
 10217         promptgroup("20 - Scan")
  9926         promptgroup("20 - Scan")
 10218     }
  9927     }
 10219     field(DISA, DBF_SHORT) {
  9928     field(DISA, DBF_SHORT) {
 10220         prompt("Disable")
  9929         prompt("Disable")
 10221     }
  9930     }
 10222     field(SDIS, DBF_INLINK) {
  9931     field(SDIS, DBF_INLINK) {
 10223         promptgroup("20 - Scan")
  9932         interest(1)
 10224         interest(1)
  9933         promptgroup("20 - Scan")
 10225         prompt("Scanning Disable")
  9934         prompt("Scanning Disable")
 10226     }
  9935     }
 10227     field(MLOK, DBF_NOACCESS) {
  9936     field(MLOK, DBF_NOACCESS) {
 10228         extra("epicsMutexId        mlok")
  9937         extra("epicsMutexId        mlok")
 10229         interest(4)
       
 10230         special(SPC_NOMOD)
       
 10231         prompt("Monitor lock")
  9938         prompt("Monitor lock")
       
  9939         interest(4)
       
  9940         special(SPC_NOMOD)
 10232     }
  9941     }
 10233     field(MLIS, DBF_NOACCESS) {
  9942     field(MLIS, DBF_NOACCESS) {
       
  9943         special(SPC_NOMOD)
       
  9944         interest(4)
       
  9945         prompt("Monitor List")
 10234         extra("ELLLIST             mlis")
  9946         extra("ELLLIST             mlis")
 10235         interest(4)
       
 10236         special(SPC_NOMOD)
       
 10237         prompt("Monitor List")
       
 10238     }
  9947     }
 10239     field(BKLNK, DBF_NOACCESS) {
  9948     field(BKLNK, DBF_NOACCESS) {
 10240         interest(4)
  9949         special(SPC_NOMOD)
 10241         special(SPC_NOMOD)
  9950         interest(4)
 10242         prompt("Backwards link tracking")
  9951         prompt("Backwards link tracking")
 10243         extra("ELLLIST             bklnk")
  9952         extra("ELLLIST             bklnk")
 10244     }
  9953     }
 10245     field(DISP, DBF_UCHAR) {
  9954     field(DISP, DBF_UCHAR) {
 10246         prompt("Disable putField")
  9955         prompt("Disable putField")
 10247     }
  9956     }
 10248     field(PROC, DBF_UCHAR) {
  9957     field(PROC, DBF_UCHAR) {
 10249         interest(3)
       
 10250         prompt("Force Processing")
  9958         prompt("Force Processing")
       
  9959         interest(3)
 10251         pp(TRUE)
  9960         pp(TRUE)
 10252     }
  9961     }
 10253     field(STAT, DBF_MENU) {
  9962     field(STAT, DBF_MENU) {
       
  9963         prompt("Alarm Status")
       
  9964         initial("UDF")
       
  9965         special(SPC_NOMOD)
 10254         menu(menuAlarmStat)
  9966         menu(menuAlarmStat)
 10255         prompt("Alarm Status")
       
 10256         special(SPC_NOMOD)
       
 10257         initial("UDF")
       
 10258     }
  9967     }
 10259     field(SEVR, DBF_MENU) {
  9968     field(SEVR, DBF_MENU) {
 10260         menu(menuAlarmSevr)
       
 10261         special(SPC_NOMOD)
       
 10262         prompt("Alarm Severity")
  9969         prompt("Alarm Severity")
       
  9970         menu(menuAlarmSevr)
       
  9971         special(SPC_NOMOD)
 10263     }
  9972     }
 10264     field(NSTA, DBF_MENU) {
  9973     field(NSTA, DBF_MENU) {
       
  9974         special(SPC_NOMOD)
       
  9975         interest(2)
 10265         menu(menuAlarmStat)
  9976         menu(menuAlarmStat)
 10266         special(SPC_NOMOD)
       
 10267         interest(2)
       
 10268         prompt("New Alarm Status")
  9977         prompt("New Alarm Status")
 10269     }
  9978     }
 10270     field(NSEV, DBF_MENU) {
  9979     field(NSEV, DBF_MENU) {
 10271         special(SPC_NOMOD)
       
 10272         interest(2)
       
 10273         prompt("New Alarm Severity")
  9980         prompt("New Alarm Severity")
 10274         menu(menuAlarmSevr)
  9981         interest(2)
       
  9982         menu(menuAlarmSevr)
       
  9983         special(SPC_NOMOD)
 10275     }
  9984     }
 10276     field(ACKS, DBF_MENU) {
  9985     field(ACKS, DBF_MENU) {
       
  9986         special(SPC_NOMOD)
       
  9987         interest(2)
 10277         menu(menuAlarmSevr)
  9988         menu(menuAlarmSevr)
 10278         prompt("Alarm Ack Severity")
  9989         prompt("Alarm Ack Severity")
 10279         special(SPC_NOMOD)
       
 10280         interest(2)
       
 10281     }
  9990     }
 10282     field(ACKT, DBF_MENU) {
  9991     field(ACKT, DBF_MENU) {
       
  9992         promptgroup("70 - Alarm")
 10283         menu(menuYesNo)
  9993         menu(menuYesNo)
       
  9994         interest(2)
       
  9995         special(SPC_NOMOD)
 10284         prompt("Alarm Ack Transient")
  9996         prompt("Alarm Ack Transient")
 10285         interest(2)
       
 10286         special(SPC_NOMOD)
       
 10287         promptgroup("70 - Alarm")
       
 10288         initial("YES")
  9997         initial("YES")
 10289     }
  9998     }
 10290     field(DISS, DBF_MENU) {
  9999     field(DISS, DBF_MENU) {
 10291         prompt("Disable Alarm Sevrty")
 10000         prompt("Disable Alarm Sevrty")
 10292         promptgroup("70 - Alarm")
 10001         promptgroup("70 - Alarm")
 10293         interest(1)
 10002         menu(menuAlarmSevr)
 10294         menu(menuAlarmSevr)
 10003         interest(1)
 10295     }
 10004     }
 10296     field(LCNT, DBF_UCHAR) {
 10005     field(LCNT, DBF_UCHAR) {
 10297         interest(2)
 10006         interest(2)
 10298         special(SPC_NOMOD)
 10007         special(SPC_NOMOD)
 10299         prompt("Lock Count")
 10008         prompt("Lock Count")
 10300     }
 10009     }
 10301     field(PACT, DBF_UCHAR) {
 10010     field(PACT, DBF_UCHAR) {
 10302         interest(1)
       
 10303         special(SPC_NOMOD)
       
 10304         prompt("Record active")
 10011         prompt("Record active")
       
 10012         interest(1)
       
 10013         special(SPC_NOMOD)
 10305     }
 10014     }
 10306     field(PUTF, DBF_UCHAR) {
 10015     field(PUTF, DBF_UCHAR) {
 10307         prompt("dbPutField process")
 10016         prompt("dbPutField process")
 10308         special(SPC_NOMOD)
 10017         special(SPC_NOMOD)
 10309         interest(1)
 10018         interest(1)
 10313         special(SPC_NOMOD)
 10022         special(SPC_NOMOD)
 10314         prompt("Reprocess ")
 10023         prompt("Reprocess ")
 10315     }
 10024     }
 10316     field(ASP, DBF_NOACCESS) {
 10025     field(ASP, DBF_NOACCESS) {
 10317         extra("struct asgMember    *asp")
 10026         extra("struct asgMember    *asp")
 10318         interest(4)
       
 10319         special(SPC_NOMOD)
       
 10320         prompt("Access Security Pvt")
 10027         prompt("Access Security Pvt")
       
 10028         interest(4)
       
 10029         special(SPC_NOMOD)
 10321     }
 10030     }
 10322     field(PPN, DBF_NOACCESS) {
 10031     field(PPN, DBF_NOACCESS) {
 10323         prompt("pprocessNotify")
 10032         prompt("pprocessNotify")
 10324         special(SPC_NOMOD)
       
 10325         interest(4)
       
 10326         extra("struct processNotify *ppn")
 10033         extra("struct processNotify *ppn")
       
 10034         interest(4)
       
 10035         special(SPC_NOMOD)
 10327     }
 10036     }
 10328     field(PPNR, DBF_NOACCESS) {
 10037     field(PPNR, DBF_NOACCESS) {
       
 10038         interest(4)
       
 10039         special(SPC_NOMOD)
       
 10040         extra("struct processNotifyRecord *ppnr")
 10329         prompt("pprocessNotifyRecord")
 10041         prompt("pprocessNotifyRecord")
 10330         special(SPC_NOMOD)
       
 10331         interest(4)
       
 10332         extra("struct processNotifyRecord *ppnr")
       
 10333     }
 10042     }
 10334     field(SPVT, DBF_NOACCESS) {
 10043     field(SPVT, DBF_NOACCESS) {
 10335         extra("struct scan_element *spvt")
 10044         extra("struct scan_element *spvt")
 10336         prompt("Scan Private")
 10045         prompt("Scan Private")
 10337         interest(4)
 10046         special(SPC_NOMOD)
 10338         special(SPC_NOMOD)
 10047         interest(4)
 10339     }
 10048     }
 10340     field(RSET, DBF_NOACCESS) {
 10049     field(RSET, DBF_NOACCESS) {
       
 10050         prompt("Address of RSET")
 10341         extra("struct typed_rset   *rset")
 10051         extra("struct typed_rset   *rset")
 10342         interest(4)
 10052         interest(4)
 10343         special(SPC_NOMOD)
 10053         special(SPC_NOMOD)
 10344         prompt("Address of RSET")
       
 10345     }
 10054     }
 10346     field(DSET, DBF_NOACCESS) {
 10055     field(DSET, DBF_NOACCESS) {
       
 10056         prompt("DSET address")
 10347         extra("struct dset         *dset")
 10057         extra("struct dset         *dset")
 10348         interest(4)
 10058         special(SPC_NOMOD)
 10349         special(SPC_NOMOD)
 10059         interest(4)
 10350         prompt("DSET address")
       
 10351     }
 10060     }
 10352     field(DPVT, DBF_NOACCESS) {
 10061     field(DPVT, DBF_NOACCESS) {
       
 10062         special(SPC_NOMOD)
       
 10063         interest(4)
 10353         extra("void                *dpvt")
 10064         extra("void                *dpvt")
 10354         prompt("Device Private")
 10065         prompt("Device Private")
 10355         special(SPC_NOMOD)
       
 10356         interest(4)
       
 10357     }
 10066     }
 10358     field(RDES, DBF_NOACCESS) {
 10067     field(RDES, DBF_NOACCESS) {
       
 10068         special(SPC_NOMOD)
       
 10069         interest(4)
 10359         extra("struct dbRecordType *rdes")
 10070         extra("struct dbRecordType *rdes")
 10360         prompt("Address of dbRecordType")
 10071         prompt("Address of dbRecordType")
 10361         interest(4)
       
 10362         special(SPC_NOMOD)
       
 10363     }
 10072     }
 10364     field(LSET, DBF_NOACCESS) {
 10073     field(LSET, DBF_NOACCESS) {
 10365         extra("struct lockRecord   *lset")
 10074         extra("struct lockRecord   *lset")
 10366         interest(4)
       
 10367         special(SPC_NOMOD)
       
 10368         prompt("Lock Set")
 10075         prompt("Lock Set")
       
 10076         interest(4)
       
 10077         special(SPC_NOMOD)
 10369     }
 10078     }
 10370     field(PRIO, DBF_MENU) {
 10079     field(PRIO, DBF_MENU) {
       
 10080         promptgroup("20 - Scan")
 10371         special(SPC_SCAN)
 10081         special(SPC_SCAN)
 10372         interest(1)
 10082         menu(menuPriority)
 10373         promptgroup("20 - Scan")
 10083         interest(1)
 10374         prompt("Scheduling Priority")
 10084         prompt("Scheduling Priority")
 10375         menu(menuPriority)
       
 10376     }
 10085     }
 10377     field(TPRO, DBF_UCHAR) {
 10086     field(TPRO, DBF_UCHAR) {
 10378         prompt("Trace Processing")
 10087         prompt("Trace Processing")
 10379     }
 10088     }
 10380     field(BKPT, DBF_NOACCESS) {
 10089     field(BKPT, DBF_NOACCESS) {
       
 10090         special(SPC_NOMOD)
       
 10091         interest(1)
       
 10092         extra("char                bkpt")
 10381         prompt("Break Point")
 10093         prompt("Break Point")
 10382         special(SPC_NOMOD)
       
 10383         interest(1)
       
 10384         extra("char                bkpt")
       
 10385     }
 10094     }
 10386     field(UDF, DBF_UCHAR) {
 10095     field(UDF, DBF_UCHAR) {
       
 10096         interest(1)
       
 10097         pp(TRUE)
       
 10098         promptgroup("10 - Common")
       
 10099         initial("1")
 10387         prompt("Undefined")
 10100         prompt("Undefined")
 10388         promptgroup("10 - Common")
       
 10389         interest(1)
       
 10390         pp(TRUE)
       
 10391         initial("1")
       
 10392     }
 10101     }
 10393     field(UDFS, DBF_MENU) {
 10102     field(UDFS, DBF_MENU) {
 10394         menu(menuAlarmSevr)
 10103         menu(menuAlarmSevr)
 10395         promptgroup("70 - Alarm")
 10104         interest(1)
 10396         interest(1)
 10105         promptgroup("70 - Alarm")
       
 10106         initial("INVALID")
 10397         prompt("Undefined Alarm Sevrty")
 10107         prompt("Undefined Alarm Sevrty")
 10398         initial("INVALID")
       
 10399     }
 10108     }
 10400     field(TIME, DBF_NOACCESS) {
 10109     field(TIME, DBF_NOACCESS) {
       
 10110         special(SPC_NOMOD)
       
 10111         interest(2)
 10401         extra("epicsTimeStamp      time")
 10112         extra("epicsTimeStamp      time")
 10402         prompt("Time")
 10113         prompt("Time")
 10403         special(SPC_NOMOD)
       
 10404         interest(2)
       
 10405     }
 10114     }
 10406     field(FLNK, DBF_FWDLINK) {
 10115     field(FLNK, DBF_FWDLINK) {
 10407         interest(1)
 10116         promptgroup("20 - Scan")
 10408         promptgroup("20 - Scan")
 10117         interest(1)
 10409         prompt("Forward Process Link")
 10118         prompt("Forward Process Link")
 10410     }
 10119     }
 10411     field(VAL, DBF_NOACCESS) {
 10120     field(VAL, DBF_NOACCESS) {
       
 10121         prompt("Value")
 10412         asl(ASL0)
 10122         asl(ASL0)
       
 10123         extra("void *		val")
       
 10124         pp(TRUE)
 10413         special(SPC_DBADDR)
 10125         special(SPC_DBADDR)
 10414         prompt("Value")
       
 10415         extra("void *		val")
       
 10416         pp(TRUE)
       
 10417     }
 10126     }
 10418     field(RARM, DBF_SHORT) {
 10127     field(RARM, DBF_SHORT) {
 10419         pp(TRUE)
 10128         interest(1)
 10420         interest(1)
 10129         pp(TRUE)
 10421         promptgroup("30 - Action")
 10130         promptgroup("30 - Action")
 10422         prompt("Rearm the waveform")
 10131         prompt("Rearm the waveform")
 10423     }
 10132     }
 10424     field(PREC, DBF_SHORT) {
 10133     field(PREC, DBF_SHORT) {
       
 10134         interest(1)
 10425         prop(YES)
 10135         prop(YES)
 10426         interest(1)
       
 10427         promptgroup("80 - Display")
 10136         promptgroup("80 - Display")
 10428         prompt("Display Precision")
 10137         prompt("Display Precision")
 10429     }
 10138     }
 10430     field(INP, DBF_INLINK) {
 10139     field(INP, DBF_INLINK) {
       
 10140         promptgroup("40 - Input")
       
 10141         interest(1)
 10431         prompt("Input Specification")
 10142         prompt("Input Specification")
 10432         interest(1)
       
 10433         promptgroup("40 - Input")
       
 10434     }
 10143     }
 10435     field(EGU, DBF_STRING) {
 10144     field(EGU, DBF_STRING) {
       
 10145         size(16)
 10436         prompt("Engineering Units")
 10146         prompt("Engineering Units")
       
 10147         prop(YES)
       
 10148         interest(1)
 10437         promptgroup("80 - Display")
 10149         promptgroup("80 - Display")
       
 10150     }
       
 10151     field(HOPR, DBF_DOUBLE) {
       
 10152         interest(1)
 10438         prop(YES)
 10153         prop(YES)
 10439         interest(1)
 10154         promptgroup("80 - Display")
 10440         size(16)
       
 10441     }
       
 10442     field(HOPR, DBF_DOUBLE) {
       
 10443         prompt("High Operating Range")
 10155         prompt("High Operating Range")
       
 10156     }
       
 10157     field(LOPR, DBF_DOUBLE) {
       
 10158         interest(1)
 10444         prop(YES)
 10159         prop(YES)
 10445         interest(1)
       
 10446         promptgroup("80 - Display")
       
 10447     }
       
 10448     field(LOPR, DBF_DOUBLE) {
       
 10449         prop(YES)
       
 10450         interest(1)
       
 10451         promptgroup("80 - Display")
 10160         promptgroup("80 - Display")
 10452         prompt("Low Operating Range")
 10161         prompt("Low Operating Range")
 10453     }
 10162     }
 10454     field(NELM, DBF_ULONG) {
 10163     field(NELM, DBF_ULONG) {
 10455         initial("1")
       
 10456         prompt("Number of Elements")
 10164         prompt("Number of Elements")
 10457         interest(1)
 10165         initial("1")
 10458         special(SPC_NOMOD)
       
 10459         promptgroup("30 - Action")
 10166         promptgroup("30 - Action")
       
 10167         special(SPC_NOMOD)
       
 10168         interest(1)
 10460     }
 10169     }
 10461     field(FTVL, DBF_MENU) {
 10170     field(FTVL, DBF_MENU) {
 10462         prompt("Field Type of Value")
 10171         prompt("Field Type of Value")
       
 10172         interest(1)
       
 10173         menu(menuFtype)
       
 10174         special(SPC_NOMOD)
 10463         promptgroup("30 - Action")
 10175         promptgroup("30 - Action")
 10464         interest(1)
       
 10465         special(SPC_NOMOD)
       
 10466         menu(menuFtype)
       
 10467     }
 10176     }
 10468     field(BUSY, DBF_SHORT) {
 10177     field(BUSY, DBF_SHORT) {
 10469         special(SPC_NOMOD)
       
 10470         prompt("Busy Indicator")
 10178         prompt("Busy Indicator")
       
 10179         special(SPC_NOMOD)
 10471     }
 10180     }
 10472     field(NORD, DBF_ULONG) {
 10181     field(NORD, DBF_ULONG) {
 10473         prompt("Number elements read")
 10182         prompt("Number elements read")
 10474         special(SPC_NOMOD)
 10183         special(SPC_NOMOD)
 10475     }
 10184     }
 10476     field(BPTR, DBF_NOACCESS) {
 10185     field(BPTR, DBF_NOACCESS) {
 10477         extra("void *		bptr")
 10186         extra("void *		bptr")
 10478         special(SPC_NOMOD)
       
 10479         interest(4)
       
 10480         prompt("Buffer Pointer")
 10187         prompt("Buffer Pointer")
       
 10188         special(SPC_NOMOD)
       
 10189         interest(4)
 10481     }
 10190     }
 10482     field(SIOL, DBF_INLINK) {
 10191     field(SIOL, DBF_INLINK) {
       
 10192         promptgroup("90 - Simulate")
       
 10193         interest(1)
 10483         prompt("Simulation Input Link")
 10194         prompt("Simulation Input Link")
 10484         interest(1)
       
 10485         promptgroup("90 - Simulate")
       
 10486     }
 10195     }
 10487     field(SIML, DBF_INLINK) {
 10196     field(SIML, DBF_INLINK) {
 10488         prompt("Simulation Mode Link")
 10197         prompt("Simulation Mode Link")
 10489         interest(1)
       
 10490         promptgroup("90 - Simulate")
 10198         promptgroup("90 - Simulate")
       
 10199         interest(1)
 10491     }
 10200     }
 10492     field(SIMM, DBF_MENU) {
 10201     field(SIMM, DBF_MENU) {
       
 10202         interest(1)
 10493         menu(menuYesNo)
 10203         menu(menuYesNo)
 10494         interest(1)
       
 10495         special(SPC_MOD)
 10204         special(SPC_MOD)
 10496         prompt("Simulation Mode")
 10205         prompt("Simulation Mode")
 10497     }
 10206     }
 10498     field(SIMS, DBF_MENU) {
 10207     field(SIMS, DBF_MENU) {
 10499         menu(menuAlarmSevr)
       
 10500         promptgroup("90 - Simulate")
 10208         promptgroup("90 - Simulate")
       
 10209         menu(menuAlarmSevr)
 10501         interest(2)
 10210         interest(2)
 10502         prompt("Simulation Mode Severity")
 10211         prompt("Simulation Mode Severity")
 10503     }
 10212     }
 10504     field(OLDSIMM, DBF_MENU) {
 10213     field(OLDSIMM, DBF_MENU) {
       
 10214         special(SPC_NOMOD)
       
 10215         interest(4)
       
 10216         menu(menuSimm)
 10505         prompt("Prev. Simulation Mode")
 10217         prompt("Prev. Simulation Mode")
 10506         interest(4)
       
 10507         special(SPC_NOMOD)
       
 10508         menu(menuSimm)
       
 10509     }
 10218     }
 10510     field(SSCN, DBF_MENU) {
 10219     field(SSCN, DBF_MENU) {
       
 10220         prompt("Sim. Mode Scan")
 10511         initial("65535")
 10221         initial("65535")
       
 10222         promptgroup("90 - Simulate")
       
 10223         interest(1)
 10512         menu(menuScan)
 10224         menu(menuScan)
 10513         interest(1)
 10225     }
       
 10226     field(SDLY, DBF_DOUBLE) {
       
 10227         interest(2)
 10514         promptgroup("90 - Simulate")
 10228         promptgroup("90 - Simulate")
 10515         prompt("Sim. Mode Scan")
       
 10516     }
       
 10517     field(SDLY, DBF_DOUBLE) {
       
 10518         initial("-1.0")
 10229         initial("-1.0")
 10519         prompt("Sim. Mode Async Delay")
 10230         prompt("Sim. Mode Async Delay")
 10520         interest(2)
       
 10521         promptgroup("90 - Simulate")
       
 10522     }
 10231     }
 10523     field(SIMPVT, DBF_NOACCESS) {
 10232     field(SIMPVT, DBF_NOACCESS) {
 10524         prompt("Sim. Mode Private")
 10233         prompt("Sim. Mode Private")
 10525         interest(4)
       
 10526         special(SPC_NOMOD)
       
 10527         extra("CALLBACK            *simpvt")
 10234         extra("CALLBACK            *simpvt")
       
 10235         special(SPC_NOMOD)
       
 10236         interest(4)
 10528     }
 10237     }
 10529     field(MPST, DBF_MENU) {
 10238     field(MPST, DBF_MENU) {
       
 10239         promptgroup("80 - Display")
       
 10240         interest(1)
       
 10241         menu(waveformPOST)
 10530         prompt("Post Value Monitors")
 10242         prompt("Post Value Monitors")
 10531         promptgroup("80 - Display")
       
 10532         interest(1)
       
 10533         menu(waveformPOST)
       
 10534     }
 10243     }
 10535     field(APST, DBF_MENU) {
 10244     field(APST, DBF_MENU) {
 10536         prompt("Post Archive Monitors")
 10245         prompt("Post Archive Monitors")
 10537         promptgroup("80 - Display")
 10246         promptgroup("80 - Display")
 10538         interest(1)
 10247         interest(1)
 10539         menu(waveformPOST)
 10248         menu(waveformPOST)
 10540     }
 10249     }
 10541     field(HASH, DBF_ULONG) {
 10250     field(HASH, DBF_ULONG) {
       
 10251         interest(3)
 10542         prompt("Hash of OnChange data.")
 10252         prompt("Hash of OnChange data.")
 10543         interest(3)
       
 10544     }
 10253     }
 10545 }
 10254 }
 10546 device(waveform, CONSTANT, devWfSoft, "Soft Channel")
 10255 device(waveform, CONSTANT, devWfSoft, "Soft Channel")
 10547 device(waveform, INST_IO, asynWfOctetCmdResponse, "asynOctetCmdResponse")
 10256 device(waveform, INST_IO, asynWfOctetCmdResponse, "asynOctetCmdResponse")
 10548 device(waveform, INST_IO, asynWfOctetWriteRead, "asynOctetWriteRead")
 10257 device(waveform, INST_IO, asynWfOctetWriteRead, "asynOctetWriteRead")
 10560 device(waveform, INST_IO, asynFloat32ArrayWfOut, "asynFloat32ArrayOut")
 10269 device(waveform, INST_IO, asynFloat32ArrayWfOut, "asynFloat32ArrayOut")
 10561 device(waveform, INST_IO, asynFloat64ArrayWfIn, "asynFloat64ArrayIn")
 10270 device(waveform, INST_IO, asynFloat64ArrayWfIn, "asynFloat64ArrayIn")
 10562 device(waveform, INST_IO, asynFloat64ArrayWfOut, "asynFloat64ArrayOut")
 10271 device(waveform, INST_IO, asynFloat64ArrayWfOut, "asynFloat64ArrayOut")
 10563 device(waveform, INST_IO, asynFloat64TimeSeries, "asynFloat64TimeSeries")
 10272 device(waveform, INST_IO, asynFloat64TimeSeries, "asynFloat64TimeSeries")
 10564 device(waveform, INST_IO, devwaveformStream, "stream")
 10273 device(waveform, INST_IO, devwaveformStream, "stream")
 10565 recordtype(int64out) {
 10274 recordtype(mbbiDirect) {
       
 10275     %#include "epicsTypes.h"
       
 10276     %#include "link.h"
       
 10277     %#include "epicsMutex.h"
       
 10278     %#include "ellLib.h"
       
 10279     %#include "epicsTime.h"
       
 10280     %#include "callback.h"
       
 10281     field(NAME, DBF_STRING) {
       
 10282         special(SPC_NOMOD)
       
 10283         size(61)
       
 10284         prompt("Record Name")
       
 10285     }
       
 10286     field(DESC, DBF_STRING) {
       
 10287         promptgroup("10 - Common")
       
 10288         size(41)
       
 10289         prompt("Descriptor")
       
 10290     }
       
 10291     field(ASG, DBF_STRING) {
       
 10292         size(29)
       
 10293         prompt("Access Security Group")
       
 10294         special(SPC_AS)
       
 10295         promptgroup("10 - Common")
       
 10296     }
       
 10297     field(SCAN, DBF_MENU) {
       
 10298         special(SPC_SCAN)
       
 10299         menu(menuScan)
       
 10300         interest(1)
       
 10301         promptgroup("20 - Scan")
       
 10302         prompt("Scan Mechanism")
       
 10303     }
       
 10304     field(PINI, DBF_MENU) {
       
 10305         interest(1)
       
 10306         menu(menuPini)
       
 10307         promptgroup("20 - Scan")
       
 10308         prompt("Process at iocInit")
       
 10309     }
       
 10310     field(PHAS, DBF_SHORT) {
       
 10311         prompt("Scan Phase")
       
 10312         promptgroup("20 - Scan")
       
 10313         interest(1)
       
 10314         special(SPC_SCAN)
       
 10315     }
       
 10316     field(EVNT, DBF_STRING) {
       
 10317         interest(1)
       
 10318         special(SPC_SCAN)
       
 10319         promptgroup("20 - Scan")
       
 10320         size(40)
       
 10321         prompt("Event Name")
       
 10322     }
       
 10323     field(TSE, DBF_SHORT) {
       
 10324         prompt("Time Stamp Event")
       
 10325         interest(1)
       
 10326         promptgroup("20 - Scan")
       
 10327     }
       
 10328     field(TSEL, DBF_INLINK) {
       
 10329         promptgroup("20 - Scan")
       
 10330         interest(1)
       
 10331         prompt("Time Stamp Link")
       
 10332     }
       
 10333     field(DTYP, DBF_DEVICE) {
       
 10334         prompt("Device Type")
       
 10335         promptgroup("10 - Common")
       
 10336         interest(1)
       
 10337     }
       
 10338     field(DISV, DBF_SHORT) {
       
 10339         prompt("Disable Value")
       
 10340         initial("1")
       
 10341         promptgroup("20 - Scan")
       
 10342     }
       
 10343     field(DISA, DBF_SHORT) {
       
 10344         prompt("Disable")
       
 10345     }
       
 10346     field(SDIS, DBF_INLINK) {
       
 10347         prompt("Scanning Disable")
       
 10348         promptgroup("20 - Scan")
       
 10349         interest(1)
       
 10350     }
       
 10351     field(MLOK, DBF_NOACCESS) {
       
 10352         special(SPC_NOMOD)
       
 10353         interest(4)
       
 10354         prompt("Monitor lock")
       
 10355         extra("epicsMutexId        mlok")
       
 10356     }
       
 10357     field(MLIS, DBF_NOACCESS) {
       
 10358         interest(4)
       
 10359         special(SPC_NOMOD)
       
 10360         prompt("Monitor List")
       
 10361         extra("ELLLIST             mlis")
       
 10362     }
       
 10363     field(BKLNK, DBF_NOACCESS) {
       
 10364         special(SPC_NOMOD)
       
 10365         interest(4)
       
 10366         extra("ELLLIST             bklnk")
       
 10367         prompt("Backwards link tracking")
       
 10368     }
       
 10369     field(DISP, DBF_UCHAR) {
       
 10370         prompt("Disable putField")
       
 10371     }
       
 10372     field(PROC, DBF_UCHAR) {
       
 10373         pp(TRUE)
       
 10374         interest(3)
       
 10375         prompt("Force Processing")
       
 10376     }
       
 10377     field(STAT, DBF_MENU) {
       
 10378         prompt("Alarm Status")
       
 10379         initial("UDF")
       
 10380         special(SPC_NOMOD)
       
 10381         menu(menuAlarmStat)
       
 10382     }
       
 10383     field(SEVR, DBF_MENU) {
       
 10384         prompt("Alarm Severity")
       
 10385         menu(menuAlarmSevr)
       
 10386         special(SPC_NOMOD)
       
 10387     }
       
 10388     field(NSTA, DBF_MENU) {
       
 10389         interest(2)
       
 10390         menu(menuAlarmStat)
       
 10391         special(SPC_NOMOD)
       
 10392         prompt("New Alarm Status")
       
 10393     }
       
 10394     field(NSEV, DBF_MENU) {
       
 10395         menu(menuAlarmSevr)
       
 10396         interest(2)
       
 10397         special(SPC_NOMOD)
       
 10398         prompt("New Alarm Severity")
       
 10399     }
       
 10400     field(ACKS, DBF_MENU) {
       
 10401         special(SPC_NOMOD)
       
 10402         interest(2)
       
 10403         menu(menuAlarmSevr)
       
 10404         prompt("Alarm Ack Severity")
       
 10405     }
       
 10406     field(ACKT, DBF_MENU) {
       
 10407         initial("YES")
       
 10408         prompt("Alarm Ack Transient")
       
 10409         menu(menuYesNo)
       
 10410         interest(2)
       
 10411         special(SPC_NOMOD)
       
 10412         promptgroup("70 - Alarm")
       
 10413     }
       
 10414     field(DISS, DBF_MENU) {
       
 10415         menu(menuAlarmSevr)
       
 10416         interest(1)
       
 10417         promptgroup("70 - Alarm")
       
 10418         prompt("Disable Alarm Sevrty")
       
 10419     }
       
 10420     field(LCNT, DBF_UCHAR) {
       
 10421         special(SPC_NOMOD)
       
 10422         interest(2)
       
 10423         prompt("Lock Count")
       
 10424     }
       
 10425     field(PACT, DBF_UCHAR) {
       
 10426         prompt("Record active")
       
 10427         special(SPC_NOMOD)
       
 10428         interest(1)
       
 10429     }
       
 10430     field(PUTF, DBF_UCHAR) {
       
 10431         interest(1)
       
 10432         special(SPC_NOMOD)
       
 10433         prompt("dbPutField process")
       
 10434     }
       
 10435     field(RPRO, DBF_UCHAR) {
       
 10436         prompt("Reprocess ")
       
 10437         interest(1)
       
 10438         special(SPC_NOMOD)
       
 10439     }
       
 10440     field(ASP, DBF_NOACCESS) {
       
 10441         special(SPC_NOMOD)
       
 10442         interest(4)
       
 10443         prompt("Access Security Pvt")
       
 10444         extra("struct asgMember    *asp")
       
 10445     }
       
 10446     field(PPN, DBF_NOACCESS) {
       
 10447         prompt("pprocessNotify")
       
 10448         extra("struct processNotify *ppn")
       
 10449         special(SPC_NOMOD)
       
 10450         interest(4)
       
 10451     }
       
 10452     field(PPNR, DBF_NOACCESS) {
       
 10453         prompt("pprocessNotifyRecord")
       
 10454         extra("struct processNotifyRecord *ppnr")
       
 10455         interest(4)
       
 10456         special(SPC_NOMOD)
       
 10457     }
       
 10458     field(SPVT, DBF_NOACCESS) {
       
 10459         extra("struct scan_element *spvt")
       
 10460         prompt("Scan Private")
       
 10461         special(SPC_NOMOD)
       
 10462         interest(4)
       
 10463     }
       
 10464     field(RSET, DBF_NOACCESS) {
       
 10465         special(SPC_NOMOD)
       
 10466         interest(4)
       
 10467         extra("struct typed_rset   *rset")
       
 10468         prompt("Address of RSET")
       
 10469     }
       
 10470     field(DSET, DBF_NOACCESS) {
       
 10471         extra("struct dset         *dset")
       
 10472         prompt("DSET address")
       
 10473         interest(4)
       
 10474         special(SPC_NOMOD)
       
 10475     }
       
 10476     field(DPVT, DBF_NOACCESS) {
       
 10477         special(SPC_NOMOD)
       
 10478         interest(4)
       
 10479         prompt("Device Private")
       
 10480         extra("void                *dpvt")
       
 10481     }
       
 10482     field(RDES, DBF_NOACCESS) {
       
 10483         prompt("Address of dbRecordType")
       
 10484         extra("struct dbRecordType *rdes")
       
 10485         special(SPC_NOMOD)
       
 10486         interest(4)
       
 10487     }
       
 10488     field(LSET, DBF_NOACCESS) {
       
 10489         prompt("Lock Set")
       
 10490         extra("struct lockRecord   *lset")
       
 10491         interest(4)
       
 10492         special(SPC_NOMOD)
       
 10493     }
       
 10494     field(PRIO, DBF_MENU) {
       
 10495         special(SPC_SCAN)
       
 10496         menu(menuPriority)
       
 10497         interest(1)
       
 10498         promptgroup("20 - Scan")
       
 10499         prompt("Scheduling Priority")
       
 10500     }
       
 10501     field(TPRO, DBF_UCHAR) {
       
 10502         prompt("Trace Processing")
       
 10503     }
       
 10504     field(BKPT, DBF_NOACCESS) {
       
 10505         extra("char                bkpt")
       
 10506         prompt("Break Point")
       
 10507         special(SPC_NOMOD)
       
 10508         interest(1)
       
 10509     }
       
 10510     field(UDF, DBF_UCHAR) {
       
 10511         prompt("Undefined")
       
 10512         initial("1")
       
 10513         pp(TRUE)
       
 10514         promptgroup("10 - Common")
       
 10515         interest(1)
       
 10516     }
       
 10517     field(UDFS, DBF_MENU) {
       
 10518         initial("INVALID")
       
 10519         prompt("Undefined Alarm Sevrty")
       
 10520         menu(menuAlarmSevr)
       
 10521         interest(1)
       
 10522         promptgroup("70 - Alarm")
       
 10523     }
       
 10524     field(TIME, DBF_NOACCESS) {
       
 10525         interest(2)
       
 10526         special(SPC_NOMOD)
       
 10527         extra("epicsTimeStamp      time")
       
 10528         prompt("Time")
       
 10529     }
       
 10530     field(FLNK, DBF_FWDLINK) {
       
 10531         promptgroup("20 - Scan")
       
 10532         interest(1)
       
 10533         prompt("Forward Process Link")
       
 10534     }
       
 10535     field(VAL, DBF_LONG) {
       
 10536         promptgroup("40 - Input")
       
 10537         pp(TRUE)
       
 10538         prompt("Current Value")
       
 10539         asl(ASL0)
       
 10540     }
       
 10541     field(NOBT, DBF_SHORT) {
       
 10542         prompt("Number of Bits")
       
 10543         interest(1)
       
 10544         special(SPC_NOMOD)
       
 10545         promptgroup("40 - Input")
       
 10546     }
       
 10547     field(INP, DBF_INLINK) {
       
 10548         interest(1)
       
 10549         promptgroup("40 - Input")
       
 10550         prompt("Input Specification")
       
 10551     }
       
 10552     field(RVAL, DBF_ULONG) {
       
 10553         prompt("Raw Value")
       
 10554         pp(TRUE)
       
 10555     }
       
 10556     field(ORAW, DBF_ULONG) {
       
 10557         special(SPC_NOMOD)
       
 10558         interest(3)
       
 10559         prompt("Prev Raw Value")
       
 10560     }
       
 10561     field(MASK, DBF_ULONG) {
       
 10562         prompt("Hardware Mask")
       
 10563         interest(1)
       
 10564         special(SPC_NOMOD)
       
 10565     }
       
 10566     field(MLST, DBF_LONG) {
       
 10567         prompt("Last Value Monitored")
       
 10568         special(SPC_NOMOD)
       
 10569         interest(3)
       
 10570     }
       
 10571     field(SHFT, DBF_USHORT) {
       
 10572         prompt("Shift")
       
 10573         interest(1)
       
 10574         promptgroup("40 - Input")
       
 10575     }
       
 10576     field(SIOL, DBF_INLINK) {
       
 10577         interest(1)
       
 10578         promptgroup("90 - Simulate")
       
 10579         prompt("Simulation Input Link")
       
 10580     }
       
 10581     field(SVAL, DBF_LONG) {
       
 10582         prompt("Simulation Value")
       
 10583     }
       
 10584     field(SIML, DBF_INLINK) {
       
 10585         prompt("Simulation Mode Link")
       
 10586         promptgroup("90 - Simulate")
       
 10587         interest(1)
       
 10588     }
       
 10589     field(SIMM, DBF_MENU) {
       
 10590         interest(1)
       
 10591         menu(menuSimm)
       
 10592         special(SPC_MOD)
       
 10593         prompt("Simulation Mode")
       
 10594     }
       
 10595     field(SIMS, DBF_MENU) {
       
 10596         prompt("Simulation Mode Severity")
       
 10597         interest(2)
       
 10598         menu(menuAlarmSevr)
       
 10599         promptgroup("90 - Simulate")
       
 10600     }
       
 10601     field(OLDSIMM, DBF_MENU) {
       
 10602         prompt("Prev. Simulation Mode")
       
 10603         interest(4)
       
 10604         menu(menuSimm)
       
 10605         special(SPC_NOMOD)
       
 10606     }
       
 10607     field(SSCN, DBF_MENU) {
       
 10608         initial("65535")
       
 10609         prompt("Sim. Mode Scan")
       
 10610         interest(1)
       
 10611         menu(menuScan)
       
 10612         promptgroup("90 - Simulate")
       
 10613     }
       
 10614     field(SDLY, DBF_DOUBLE) {
       
 10615         promptgroup("90 - Simulate")
       
 10616         interest(2)
       
 10617         prompt("Sim. Mode Async Delay")
       
 10618         initial("-1.0")
       
 10619     }
       
 10620     field(SIMPVT, DBF_NOACCESS) {
       
 10621         prompt("Sim. Mode Private")
       
 10622         extra("CALLBACK            *simpvt")
       
 10623         special(SPC_NOMOD)
       
 10624         interest(4)
       
 10625     }
       
 10626     field(B0, DBF_UCHAR) {
       
 10627         pp(TRUE)
       
 10628         interest(1)
       
 10629         prompt("Bit 0")
       
 10630     }
       
 10631     field(B1, DBF_UCHAR) {
       
 10632         prompt("Bit 1")
       
 10633         pp(TRUE)
       
 10634         interest(1)
       
 10635     }
       
 10636     field(B2, DBF_UCHAR) {
       
 10637         prompt("Bit 2")
       
 10638         pp(TRUE)
       
 10639         interest(1)
       
 10640     }
       
 10641     field(B3, DBF_UCHAR) {
       
 10642         prompt("Bit 3")
       
 10643         pp(TRUE)
       
 10644         interest(1)
       
 10645     }
       
 10646     field(B4, DBF_UCHAR) {
       
 10647         prompt("Bit 4")
       
 10648         interest(1)
       
 10649         pp(TRUE)
       
 10650     }
       
 10651     field(B5, DBF_UCHAR) {
       
 10652         interest(1)
       
 10653         pp(TRUE)
       
 10654         prompt("Bit 5")
       
 10655     }
       
 10656     field(B6, DBF_UCHAR) {
       
 10657         pp(TRUE)
       
 10658         interest(1)
       
 10659         prompt("Bit 6")
       
 10660     }
       
 10661     field(B7, DBF_UCHAR) {
       
 10662         interest(1)
       
 10663         pp(TRUE)
       
 10664         prompt("Bit 7")
       
 10665     }
       
 10666     field(B8, DBF_UCHAR) {
       
 10667         interest(1)
       
 10668         pp(TRUE)
       
 10669         prompt("Bit 8")
       
 10670     }
       
 10671     field(B9, DBF_UCHAR) {
       
 10672         prompt("Bit 9")
       
 10673         pp(TRUE)
       
 10674         interest(1)
       
 10675     }
       
 10676     field(BA, DBF_UCHAR) {
       
 10677         interest(1)
       
 10678         pp(TRUE)
       
 10679         prompt("Bit 10")
       
 10680     }
       
 10681     field(BB, DBF_UCHAR) {
       
 10682         pp(TRUE)
       
 10683         interest(1)
       
 10684         prompt("Bit 11")
       
 10685     }
       
 10686     field(BC, DBF_UCHAR) {
       
 10687         prompt("Bit 12")
       
 10688         interest(1)
       
 10689         pp(TRUE)
       
 10690     }
       
 10691     field(BD, DBF_UCHAR) {
       
 10692         prompt("Bit 13")
       
 10693         interest(1)
       
 10694         pp(TRUE)
       
 10695     }
       
 10696     field(BE, DBF_UCHAR) {
       
 10697         prompt("Bit 14")
       
 10698         interest(1)
       
 10699         pp(TRUE)
       
 10700     }
       
 10701     field(BF, DBF_UCHAR) {
       
 10702         prompt("Bit 15")
       
 10703         interest(1)
       
 10704         pp(TRUE)
       
 10705     }
       
 10706     field(B10, DBF_UCHAR) {
       
 10707         interest(1)
       
 10708         pp(TRUE)
       
 10709         prompt("Bit 16")
       
 10710     }
       
 10711     field(B11, DBF_UCHAR) {
       
 10712         pp(TRUE)
       
 10713         interest(1)
       
 10714         prompt("Bit 17")
       
 10715     }
       
 10716     field(B12, DBF_UCHAR) {
       
 10717         pp(TRUE)
       
 10718         interest(1)
       
 10719         prompt("Bit 18")
       
 10720     }
       
 10721     field(B13, DBF_UCHAR) {
       
 10722         prompt("Bit 19")
       
 10723         interest(1)
       
 10724         pp(TRUE)
       
 10725     }
       
 10726     field(B14, DBF_UCHAR) {
       
 10727         prompt("Bit 20")
       
 10728         interest(1)
       
 10729         pp(TRUE)
       
 10730     }
       
 10731     field(B15, DBF_UCHAR) {
       
 10732         pp(TRUE)
       
 10733         interest(1)
       
 10734         prompt("Bit 21")
       
 10735     }
       
 10736     field(B16, DBF_UCHAR) {
       
 10737         interest(1)
       
 10738         pp(TRUE)
       
 10739         prompt("Bit 22")
       
 10740     }
       
 10741     field(B17, DBF_UCHAR) {
       
 10742         interest(1)
       
 10743         pp(TRUE)
       
 10744         prompt("Bit 23")
       
 10745     }
       
 10746     field(B18, DBF_UCHAR) {
       
 10747         interest(1)
       
 10748         pp(TRUE)
       
 10749         prompt("Bit 24")
       
 10750     }
       
 10751     field(B19, DBF_UCHAR) {
       
 10752         prompt("Bit 25")
       
 10753         interest(1)
       
 10754         pp(TRUE)
       
 10755     }
       
 10756     field(B1A, DBF_UCHAR) {
       
 10757         pp(TRUE)
       
 10758         interest(1)
       
 10759         prompt("Bit 26")
       
 10760     }
       
 10761     field(B1B, DBF_UCHAR) {
       
 10762         prompt("Bit 27")
       
 10763         interest(1)
       
 10764         pp(TRUE)
       
 10765     }
       
 10766     field(B1C, DBF_UCHAR) {
       
 10767         prompt("Bit 28")
       
 10768         pp(TRUE)
       
 10769         interest(1)
       
 10770     }
       
 10771     field(B1D, DBF_UCHAR) {
       
 10772         prompt("Bit 29")
       
 10773         interest(1)
       
 10774         pp(TRUE)
       
 10775     }
       
 10776     field(B1E, DBF_UCHAR) {
       
 10777         prompt("Bit 30")
       
 10778         interest(1)
       
 10779         pp(TRUE)
       
 10780     }
       
 10781     field(B1F, DBF_UCHAR) {
       
 10782         prompt("Bit 31")
       
 10783         interest(1)
       
 10784         pp(TRUE)
       
 10785     }
       
 10786 }
       
 10787 device(mbbiDirect, CONSTANT, devMbbiDirectSoft, "Soft Channel")
       
 10788 device(mbbiDirect, CONSTANT, devMbbiDirectSoftRaw, "Raw Soft Channel")
       
 10789 device(mbbiDirect, CONSTANT, devMbbiDirectSoftCallback, "Async Soft Channel")
       
 10790 device(mbbiDirect, INST_IO, asynMbbiDirectUInt32Digital, "asynUInt32Digital")
       
 10791 device(mbbiDirect, INST_IO, devmbbiDirectStream, "stream")
       
 10792 recordtype(aao) {
       
 10793     %#include "epicsTypes.h"
       
 10794     %#include "link.h"
       
 10795     %#include "epicsMutex.h"
       
 10796     %#include "ellLib.h"
       
 10797     %#include "epicsTime.h"
       
 10798     %#include "callback.h"
       
 10799     field(NAME, DBF_STRING) {
       
 10800         prompt("Record Name")
       
 10801         size(61)
       
 10802         special(SPC_NOMOD)
       
 10803     }
       
 10804     field(DESC, DBF_STRING) {
       
 10805         promptgroup("10 - Common")
       
 10806         size(41)
       
 10807         prompt("Descriptor")
       
 10808     }
       
 10809     field(ASG, DBF_STRING) {
       
 10810         size(29)
       
 10811         prompt("Access Security Group")
       
 10812         special(SPC_AS)
       
 10813         promptgroup("10 - Common")
       
 10814     }
       
 10815     field(SCAN, DBF_MENU) {
       
 10816         interest(1)
       
 10817         menu(menuScan)
       
 10818         special(SPC_SCAN)
       
 10819         promptgroup("20 - Scan")
       
 10820         prompt("Scan Mechanism")
       
 10821     }
       
 10822     field(PINI, DBF_MENU) {
       
 10823         menu(menuPini)
       
 10824         interest(1)
       
 10825         promptgroup("20 - Scan")
       
 10826         prompt("Process at iocInit")
       
 10827     }
       
 10828     field(PHAS, DBF_SHORT) {
       
 10829         prompt("Scan Phase")
       
 10830         promptgroup("20 - Scan")
       
 10831         special(SPC_SCAN)
       
 10832         interest(1)
       
 10833     }
       
 10834     field(EVNT, DBF_STRING) {
       
 10835         promptgroup("20 - Scan")
       
 10836         special(SPC_SCAN)
       
 10837         interest(1)
       
 10838         prompt("Event Name")
       
 10839         size(40)
       
 10840     }
       
 10841     field(TSE, DBF_SHORT) {
       
 10842         prompt("Time Stamp Event")
       
 10843         promptgroup("20 - Scan")
       
 10844         interest(1)
       
 10845     }
       
 10846     field(TSEL, DBF_INLINK) {
       
 10847         promptgroup("20 - Scan")
       
 10848         interest(1)
       
 10849         prompt("Time Stamp Link")
       
 10850     }
       
 10851     field(DTYP, DBF_DEVICE) {
       
 10852         prompt("Device Type")
       
 10853         interest(1)
       
 10854         promptgroup("10 - Common")
       
 10855     }
       
 10856     field(DISV, DBF_SHORT) {
       
 10857         initial("1")
       
 10858         prompt("Disable Value")
       
 10859         promptgroup("20 - Scan")
       
 10860     }
       
 10861     field(DISA, DBF_SHORT) {
       
 10862         prompt("Disable")
       
 10863     }
       
 10864     field(SDIS, DBF_INLINK) {
       
 10865         interest(1)
       
 10866         promptgroup("20 - Scan")
       
 10867         prompt("Scanning Disable")
       
 10868     }
       
 10869     field(MLOK, DBF_NOACCESS) {
       
 10870         interest(4)
       
 10871         special(SPC_NOMOD)
       
 10872         extra("epicsMutexId        mlok")
       
 10873         prompt("Monitor lock")
       
 10874     }
       
 10875     field(MLIS, DBF_NOACCESS) {
       
 10876         interest(4)
       
 10877         special(SPC_NOMOD)
       
 10878         extra("ELLLIST             mlis")
       
 10879         prompt("Monitor List")
       
 10880     }
       
 10881     field(BKLNK, DBF_NOACCESS) {
       
 10882         prompt("Backwards link tracking")
       
 10883         extra("ELLLIST             bklnk")
       
 10884         interest(4)
       
 10885         special(SPC_NOMOD)
       
 10886     }
       
 10887     field(DISP, DBF_UCHAR) {
       
 10888         prompt("Disable putField")
       
 10889     }
       
 10890     field(PROC, DBF_UCHAR) {
       
 10891         prompt("Force Processing")
       
 10892         interest(3)
       
 10893         pp(TRUE)
       
 10894     }
       
 10895     field(STAT, DBF_MENU) {
       
 10896         menu(menuAlarmStat)
       
 10897         special(SPC_NOMOD)
       
 10898         prompt("Alarm Status")
       
 10899         initial("UDF")
       
 10900     }
       
 10901     field(SEVR, DBF_MENU) {
       
 10902         prompt("Alarm Severity")
       
 10903         special(SPC_NOMOD)
       
 10904         menu(menuAlarmSevr)
       
 10905     }
       
 10906     field(NSTA, DBF_MENU) {
       
 10907         menu(menuAlarmStat)
       
 10908         interest(2)
       
 10909         special(SPC_NOMOD)
       
 10910         prompt("New Alarm Status")
       
 10911     }
       
 10912     field(NSEV, DBF_MENU) {
       
 10913         interest(2)
       
 10914         menu(menuAlarmSevr)
       
 10915         special(SPC_NOMOD)
       
 10916         prompt("New Alarm Severity")
       
 10917     }
       
 10918     field(ACKS, DBF_MENU) {
       
 10919         prompt("Alarm Ack Severity")
       
 10920         special(SPC_NOMOD)
       
 10921         menu(menuAlarmSevr)
       
 10922         interest(2)
       
 10923     }
       
 10924     field(ACKT, DBF_MENU) {
       
 10925         promptgroup("70 - Alarm")
       
 10926         special(SPC_NOMOD)
       
 10927         interest(2)
       
 10928         menu(menuYesNo)
       
 10929         prompt("Alarm Ack Transient")
       
 10930         initial("YES")
       
 10931     }
       
 10932     field(DISS, DBF_MENU) {
       
 10933         promptgroup("70 - Alarm")
       
 10934         interest(1)
       
 10935         menu(menuAlarmSevr)
       
 10936         prompt("Disable Alarm Sevrty")
       
 10937     }
       
 10938     field(LCNT, DBF_UCHAR) {
       
 10939         prompt("Lock Count")
       
 10940         interest(2)
       
 10941         special(SPC_NOMOD)
       
 10942     }
       
 10943     field(PACT, DBF_UCHAR) {
       
 10944         special(SPC_NOMOD)
       
 10945         interest(1)
       
 10946         prompt("Record active")
       
 10947     }
       
 10948     field(PUTF, DBF_UCHAR) {
       
 10949         special(SPC_NOMOD)
       
 10950         interest(1)
       
 10951         prompt("dbPutField process")
       
 10952     }
       
 10953     field(RPRO, DBF_UCHAR) {
       
 10954         interest(1)
       
 10955         special(SPC_NOMOD)
       
 10956         prompt("Reprocess ")
       
 10957     }
       
 10958     field(ASP, DBF_NOACCESS) {
       
 10959         interest(4)
       
 10960         special(SPC_NOMOD)
       
 10961         extra("struct asgMember    *asp")
       
 10962         prompt("Access Security Pvt")
       
 10963     }
       
 10964     field(PPN, DBF_NOACCESS) {
       
 10965         interest(4)
       
 10966         special(SPC_NOMOD)
       
 10967         extra("struct processNotify *ppn")
       
 10968         prompt("pprocessNotify")
       
 10969     }
       
 10970     field(PPNR, DBF_NOACCESS) {
       
 10971         interest(4)
       
 10972         special(SPC_NOMOD)
       
 10973         extra("struct processNotifyRecord *ppnr")
       
 10974         prompt("pprocessNotifyRecord")
       
 10975     }
       
 10976     field(SPVT, DBF_NOACCESS) {
       
 10977         prompt("Scan Private")
       
 10978         extra("struct scan_element *spvt")
       
 10979         interest(4)
       
 10980         special(SPC_NOMOD)
       
 10981     }
       
 10982     field(RSET, DBF_NOACCESS) {
       
 10983         interest(4)
       
 10984         special(SPC_NOMOD)
       
 10985         prompt("Address of RSET")
       
 10986         extra("struct typed_rset   *rset")
       
 10987     }
       
 10988     field(DSET, DBF_NOACCESS) {
       
 10989         extra("struct dset         *dset")
       
 10990         prompt("DSET address")
       
 10991         special(SPC_NOMOD)
       
 10992         interest(4)
       
 10993     }
       
 10994     field(DPVT, DBF_NOACCESS) {
       
 10995         prompt("Device Private")
       
 10996         extra("void                *dpvt")
       
 10997         interest(4)
       
 10998         special(SPC_NOMOD)
       
 10999     }
       
 11000     field(RDES, DBF_NOACCESS) {
       
 11001         extra("struct dbRecordType *rdes")
       
 11002         prompt("Address of dbRecordType")
       
 11003         interest(4)
       
 11004         special(SPC_NOMOD)
       
 11005     }
       
 11006     field(LSET, DBF_NOACCESS) {
       
 11007         interest(4)
       
 11008         special(SPC_NOMOD)
       
 11009         extra("struct lockRecord   *lset")
       
 11010         prompt("Lock Set")
       
 11011     }
       
 11012     field(PRIO, DBF_MENU) {
       
 11013         special(SPC_SCAN)
       
 11014         menu(menuPriority)
       
 11015         interest(1)
       
 11016         promptgroup("20 - Scan")
       
 11017         prompt("Scheduling Priority")
       
 11018     }
       
 11019     field(TPRO, DBF_UCHAR) {
       
 11020         prompt("Trace Processing")
       
 11021     }
       
 11022     field(BKPT, DBF_NOACCESS) {
       
 11023         prompt("Break Point")
       
 11024         extra("char                bkpt")
       
 11025         interest(1)
       
 11026         special(SPC_NOMOD)
       
 11027     }
       
 11028     field(UDF, DBF_UCHAR) {
       
 11029         promptgroup("10 - Common")
       
 11030         pp(TRUE)
       
 11031         interest(1)
       
 11032         prompt("Undefined")
       
 11033         initial("1")
       
 11034     }
       
 11035     field(UDFS, DBF_MENU) {
       
 11036         initial("INVALID")
       
 11037         prompt("Undefined Alarm Sevrty")
       
 11038         menu(menuAlarmSevr)
       
 11039         interest(1)
       
 11040         promptgroup("70 - Alarm")
       
 11041     }
       
 11042     field(TIME, DBF_NOACCESS) {
       
 11043         interest(2)
       
 11044         special(SPC_NOMOD)
       
 11045         prompt("Time")
       
 11046         extra("epicsTimeStamp      time")
       
 11047     }
       
 11048     field(FLNK, DBF_FWDLINK) {
       
 11049         prompt("Forward Process Link")
       
 11050         promptgroup("20 - Scan")
       
 11051         interest(1)
       
 11052     }
       
 11053     field(VAL, DBF_NOACCESS) {
       
 11054         extra("void *		val")
       
 11055         asl(ASL0)
       
 11056         prompt("Value")
       
 11057         special(SPC_DBADDR)
       
 11058         pp(TRUE)
       
 11059     }
       
 11060     field(PREC, DBF_SHORT) {
       
 11061         prompt("Display Precision")
       
 11062         prop(YES)
       
 11063         interest(1)
       
 11064         promptgroup("80 - Display")
       
 11065     }
       
 11066     field(OUT, DBF_OUTLINK) {
       
 11067         interest(1)
       
 11068         promptgroup("50 - Output")
       
 11069         prompt("Output Specification")
       
 11070     }
       
 11071     field(EGU, DBF_STRING) {
       
 11072         size(16)
       
 11073         prompt("Engineering Units")
       
 11074         interest(1)
       
 11075         prop(YES)
       
 11076         promptgroup("80 - Display")
       
 11077     }
       
 11078     field(HOPR, DBF_DOUBLE) {
       
 11079         prompt("High Operating Range")
       
 11080         promptgroup("80 - Display")
       
 11081         interest(1)
       
 11082         prop(YES)
       
 11083     }
       
 11084     field(LOPR, DBF_DOUBLE) {
       
 11085         promptgroup("80 - Display")
       
 11086         prop(YES)
       
 11087         interest(1)
       
 11088         prompt("Low Operating Range")
       
 11089     }
       
 11090     field(NELM, DBF_ULONG) {
       
 11091         initial("1")
       
 11092         prompt("Number of Elements")
       
 11093         interest(1)
       
 11094         special(SPC_NOMOD)
       
 11095         promptgroup("30 - Action")
       
 11096     }
       
 11097     field(FTVL, DBF_MENU) {
       
 11098         promptgroup("30 - Action")
       
 11099         special(SPC_NOMOD)
       
 11100         interest(1)
       
 11101         menu(menuFtype)
       
 11102         prompt("Field Type of Value")
       
 11103     }
       
 11104     field(NORD, DBF_ULONG) {
       
 11105         prompt("Number elements read")
       
 11106         special(SPC_NOMOD)
       
 11107     }
       
 11108     field(BPTR, DBF_NOACCESS) {
       
 11109         prompt("Buffer Pointer")
       
 11110         extra("void *		bptr")
       
 11111         interest(4)
       
 11112         special(SPC_NOMOD)
       
 11113     }
       
 11114     field(SIML, DBF_INLINK) {
       
 11115         prompt("Simulation Mode Link")
       
 11116         interest(1)
       
 11117         promptgroup("90 - Simulate")
       
 11118     }
       
 11119     field(SIMM, DBF_MENU) {
       
 11120         prompt("Simulation Mode")
       
 11121         interest(1)
       
 11122         menu(menuYesNo)
       
 11123         special(SPC_MOD)
       
 11124     }
       
 11125     field(SIMS, DBF_MENU) {
       
 11126         interest(2)
       
 11127         menu(menuAlarmSevr)
       
 11128         promptgroup("90 - Simulate")
       
 11129         prompt("Simulation Mode Severity")
       
 11130     }
       
 11131     field(SIOL, DBF_OUTLINK) {
       
 11132         prompt("Simulation Output Link")
       
 11133         promptgroup("90 - Simulate")
       
 11134         interest(1)
       
 11135     }
       
 11136     field(OLDSIMM, DBF_MENU) {
       
 11137         interest(4)
       
 11138         menu(menuSimm)
       
 11139         special(SPC_NOMOD)
       
 11140         prompt("Prev. Simulation Mode")
       
 11141     }
       
 11142     field(SSCN, DBF_MENU) {
       
 11143         promptgroup("90 - Simulate")
       
 11144         menu(menuScan)
       
 11145         interest(1)
       
 11146         prompt("Sim. Mode Scan")
       
 11147         initial("65535")
       
 11148     }
       
 11149     field(SDLY, DBF_DOUBLE) {
       
 11150         initial("-1.0")
       
 11151         prompt("Sim. Mode Async Delay")
       
 11152         interest(2)
       
 11153         promptgroup("90 - Simulate")
       
 11154     }
       
 11155     field(SIMPVT, DBF_NOACCESS) {
       
 11156         prompt("Sim. Mode Private")
       
 11157         extra("CALLBACK            *simpvt")
       
 11158         special(SPC_NOMOD)
       
 11159         interest(4)
       
 11160     }
       
 11161     field(MPST, DBF_MENU) {
       
 11162         prompt("Post Value Monitors")
       
 11163         interest(1)
       
 11164         menu(aaoPOST)
       
 11165         promptgroup("80 - Display")
       
 11166     }
       
 11167     field(APST, DBF_MENU) {
       
 11168         prompt("Post Archive Monitors")
       
 11169         menu(aaoPOST)
       
 11170         interest(1)
       
 11171         promptgroup("80 - Display")
       
 11172     }
       
 11173     field(HASH, DBF_ULONG) {
       
 11174         interest(3)
       
 11175         prompt("Hash of OnChange data.")
       
 11176     }
       
 11177 }
       
 11178 device(aao, CONSTANT, devAaoSoft, "Soft Channel")
       
 11179 device(aao, INST_IO, devaaoStream, "stream")
       
 11180 recordtype(histogram) {
       
 11181     %#include "epicsTypes.h"
       
 11182     %#include "link.h"
       
 11183     %#include "epicsMutex.h"
       
 11184     %#include "ellLib.h"
       
 11185     %#include "epicsTime.h"
       
 11186     %#include "callback.h"
       
 11187     field(NAME, DBF_STRING) {
       
 11188         prompt("Record Name")
       
 11189         size(61)
       
 11190         special(SPC_NOMOD)
       
 11191     }
       
 11192     field(DESC, DBF_STRING) {
       
 11193         promptgroup("10 - Common")
       
 11194         prompt("Descriptor")
       
 11195         size(41)
       
 11196     }
       
 11197     field(ASG, DBF_STRING) {
       
 11198         size(29)
       
 11199         prompt("Access Security Group")
       
 11200         special(SPC_AS)
       
 11201         promptgroup("10 - Common")
       
 11202     }
       
 11203     field(SCAN, DBF_MENU) {
       
 11204         prompt("Scan Mechanism")
       
 11205         promptgroup("20 - Scan")
       
 11206         special(SPC_SCAN)
       
 11207         interest(1)
       
 11208         menu(menuScan)
       
 11209     }
       
 11210     field(PINI, DBF_MENU) {
       
 11211         prompt("Process at iocInit")
       
 11212         menu(menuPini)
       
 11213         interest(1)
       
 11214         promptgroup("20 - Scan")
       
 11215     }
       
 11216     field(PHAS, DBF_SHORT) {
       
 11217         prompt("Scan Phase")
       
 11218         interest(1)
       
 11219         special(SPC_SCAN)
       
 11220         promptgroup("20 - Scan")
       
 11221     }
       
 11222     field(EVNT, DBF_STRING) {
       
 11223         special(SPC_SCAN)
       
 11224         interest(1)
       
 11225         promptgroup("20 - Scan")
       
 11226         size(40)
       
 11227         prompt("Event Name")
       
 11228     }
       
 11229     field(TSE, DBF_SHORT) {
       
 11230         prompt("Time Stamp Event")
       
 11231         promptgroup("20 - Scan")
       
 11232         interest(1)
       
 11233     }
       
 11234     field(TSEL, DBF_INLINK) {
       
 11235         prompt("Time Stamp Link")
       
 11236         interest(1)
       
 11237         promptgroup("20 - Scan")
       
 11238     }
       
 11239     field(DTYP, DBF_DEVICE) {
       
 11240         prompt("Device Type")
       
 11241         promptgroup("10 - Common")
       
 11242         interest(1)
       
 11243     }
       
 11244     field(DISV, DBF_SHORT) {
       
 11245         promptgroup("20 - Scan")
       
 11246         prompt("Disable Value")
       
 11247         initial("1")
       
 11248     }
       
 11249     field(DISA, DBF_SHORT) {
       
 11250         prompt("Disable")
       
 11251     }
       
 11252     field(SDIS, DBF_INLINK) {
       
 11253         prompt("Scanning Disable")
       
 11254         promptgroup("20 - Scan")
       
 11255         interest(1)
       
 11256     }
       
 11257     field(MLOK, DBF_NOACCESS) {
       
 11258         special(SPC_NOMOD)
       
 11259         interest(4)
       
 11260         prompt("Monitor lock")
       
 11261         extra("epicsMutexId        mlok")
       
 11262     }
       
 11263     field(MLIS, DBF_NOACCESS) {
       
 11264         special(SPC_NOMOD)
       
 11265         interest(4)
       
 11266         extra("ELLLIST             mlis")
       
 11267         prompt("Monitor List")
       
 11268     }
       
 11269     field(BKLNK, DBF_NOACCESS) {
       
 11270         special(SPC_NOMOD)
       
 11271         interest(4)
       
 11272         extra("ELLLIST             bklnk")
       
 11273         prompt("Backwards link tracking")
       
 11274     }
       
 11275     field(DISP, DBF_UCHAR) {
       
 11276         prompt("Disable putField")
       
 11277     }
       
 11278     field(PROC, DBF_UCHAR) {
       
 11279         prompt("Force Processing")
       
 11280         interest(3)
       
 11281         pp(TRUE)
       
 11282     }
       
 11283     field(STAT, DBF_MENU) {
       
 11284         initial("UDF")
       
 11285         prompt("Alarm Status")
       
 11286         special(SPC_NOMOD)
       
 11287         menu(menuAlarmStat)
       
 11288     }
       
 11289     field(SEVR, DBF_MENU) {
       
 11290         prompt("Alarm Severity")
       
 11291         special(SPC_NOMOD)
       
 11292         menu(menuAlarmSevr)
       
 11293     }
       
 11294     field(NSTA, DBF_MENU) {
       
 11295         prompt("New Alarm Status")
       
 11296         special(SPC_NOMOD)
       
 11297         menu(menuAlarmStat)
       
 11298         interest(2)
       
 11299     }
       
 11300     field(NSEV, DBF_MENU) {
       
 11301         prompt("New Alarm Severity")
       
 11302         special(SPC_NOMOD)
       
 11303         menu(menuAlarmSevr)
       
 11304         interest(2)
       
 11305     }
       
 11306     field(ACKS, DBF_MENU) {
       
 11307         prompt("Alarm Ack Severity")
       
 11308         special(SPC_NOMOD)
       
 11309         interest(2)
       
 11310         menu(menuAlarmSevr)
       
 11311     }
       
 11312     field(ACKT, DBF_MENU) {
       
 11313         promptgroup("70 - Alarm")
       
 11314         interest(2)
       
 11315         menu(menuYesNo)
       
 11316         special(SPC_NOMOD)
       
 11317         prompt("Alarm Ack Transient")
       
 11318         initial("YES")
       
 11319     }
       
 11320     field(DISS, DBF_MENU) {
       
 11321         prompt("Disable Alarm Sevrty")
       
 11322         promptgroup("70 - Alarm")
       
 11323         interest(1)
       
 11324         menu(menuAlarmSevr)
       
 11325     }
       
 11326     field(LCNT, DBF_UCHAR) {
       
 11327         prompt("Lock Count")
       
 11328         interest(2)
       
 11329         special(SPC_NOMOD)
       
 11330     }
       
 11331     field(PACT, DBF_UCHAR) {
       
 11332         special(SPC_NOMOD)
       
 11333         interest(1)
       
 11334         prompt("Record active")
       
 11335     }
       
 11336     field(PUTF, DBF_UCHAR) {
       
 11337         special(SPC_NOMOD)
       
 11338         interest(1)
       
 11339         prompt("dbPutField process")
       
 11340     }
       
 11341     field(RPRO, DBF_UCHAR) {
       
 11342         prompt("Reprocess ")
       
 11343         special(SPC_NOMOD)
       
 11344         interest(1)
       
 11345     }
       
 11346     field(ASP, DBF_NOACCESS) {
       
 11347         interest(4)
       
 11348         special(SPC_NOMOD)
       
 11349         prompt("Access Security Pvt")
       
 11350         extra("struct asgMember    *asp")
       
 11351     }
       
 11352     field(PPN, DBF_NOACCESS) {
       
 11353         prompt("pprocessNotify")
       
 11354         extra("struct processNotify *ppn")
       
 11355         interest(4)
       
 11356         special(SPC_NOMOD)
       
 11357     }
       
 11358     field(PPNR, DBF_NOACCESS) {
       
 11359         prompt("pprocessNotifyRecord")
       
 11360         extra("struct processNotifyRecord *ppnr")
       
 11361         special(SPC_NOMOD)
       
 11362         interest(4)
       
 11363     }
       
 11364     field(SPVT, DBF_NOACCESS) {
       
 11365         special(SPC_NOMOD)
       
 11366         interest(4)
       
 11367         prompt("Scan Private")
       
 11368         extra("struct scan_element *spvt")
       
 11369     }
       
 11370     field(RSET, DBF_NOACCESS) {
       
 11371         extra("struct typed_rset   *rset")
       
 11372         prompt("Address of RSET")
       
 11373         interest(4)
       
 11374         special(SPC_NOMOD)
       
 11375     }
       
 11376     field(DSET, DBF_NOACCESS) {
       
 11377         prompt("DSET address")
       
 11378         extra("struct dset         *dset")
       
 11379         special(SPC_NOMOD)
       
 11380         interest(4)
       
 11381     }
       
 11382     field(DPVT, DBF_NOACCESS) {
       
 11383         extra("void                *dpvt")
       
 11384         prompt("Device Private")
       
 11385         special(SPC_NOMOD)
       
 11386         interest(4)
       
 11387     }
       
 11388     field(RDES, DBF_NOACCESS) {
       
 11389         interest(4)
       
 11390         special(SPC_NOMOD)
       
 11391         prompt("Address of dbRecordType")
       
 11392         extra("struct dbRecordType *rdes")
       
 11393     }
       
 11394     field(LSET, DBF_NOACCESS) {
       
 11395         special(SPC_NOMOD)
       
 11396         interest(4)
       
 11397         extra("struct lockRecord   *lset")
       
 11398         prompt("Lock Set")
       
 11399     }
       
 11400     field(PRIO, DBF_MENU) {
       
 11401         prompt("Scheduling Priority")
       
 11402         promptgroup("20 - Scan")
       
 11403         menu(menuPriority)
       
 11404         interest(1)
       
 11405         special(SPC_SCAN)
       
 11406     }
       
 11407     field(TPRO, DBF_UCHAR) {
       
 11408         prompt("Trace Processing")
       
 11409     }
       
 11410     field(BKPT, DBF_NOACCESS) {
       
 11411         special(SPC_NOMOD)
       
 11412         interest(1)
       
 11413         prompt("Break Point")
       
 11414         extra("char                bkpt")
       
 11415     }
       
 11416     field(UDF, DBF_UCHAR) {
       
 11417         interest(1)
       
 11418         pp(TRUE)
       
 11419         promptgroup("10 - Common")
       
 11420         initial("1")
       
 11421         prompt("Undefined")
       
 11422     }
       
 11423     field(UDFS, DBF_MENU) {
       
 11424         promptgroup("70 - Alarm")
       
 11425         menu(menuAlarmSevr)
       
 11426         interest(1)
       
 11427         prompt("Undefined Alarm Sevrty")
       
 11428         initial("INVALID")
       
 11429     }
       
 11430     field(TIME, DBF_NOACCESS) {
       
 11431         special(SPC_NOMOD)
       
 11432         interest(2)
       
 11433         extra("epicsTimeStamp      time")
       
 11434         prompt("Time")
       
 11435     }
       
 11436     field(FLNK, DBF_FWDLINK) {
       
 11437         prompt("Forward Process Link")
       
 11438         promptgroup("20 - Scan")
       
 11439         interest(1)
       
 11440     }
       
 11441     field(VAL, DBF_NOACCESS) {
       
 11442         special(SPC_DBADDR)
       
 11443         prompt("Value")
       
 11444         extra("void *	val")
       
 11445         asl(ASL0)
       
 11446     }
       
 11447     field(NELM, DBF_USHORT) {
       
 11448         interest(1)
       
 11449         special(SPC_NOMOD)
       
 11450         promptgroup("30 - Action")
       
 11451         initial("1")
       
 11452         prompt("Num of Array Elements")
       
 11453     }
       
 11454     field(CSTA, DBF_SHORT) {
       
 11455         special(SPC_NOMOD)
       
 11456         interest(1)
       
 11457         prompt("Collection Status")
       
 11458         initial("1")
       
 11459     }
       
 11460     field(CMD, DBF_MENU) {
       
 11461         prompt("Collection Control")
       
 11462         asl(ASL0)
       
 11463         interest(1)
       
 11464         menu(histogramCMD)
       
 11465         special(SPC_CALC)
       
 11466     }
       
 11467     field(ULIM, DBF_DOUBLE) {
       
 11468         prompt("Upper Signal Limit")
       
 11469         promptgroup("30 - Action")
       
 11470         interest(1)
       
 11471         prop(YES)
       
 11472         special(SPC_RESET)
       
 11473     }
       
 11474     field(LLIM, DBF_DOUBLE) {
       
 11475         prompt("Lower Signal Limit ")
       
 11476         promptgroup("30 - Action")
       
 11477         interest(1)
       
 11478         prop(YES)
       
 11479         special(SPC_RESET)
       
 11480     }
       
 11481     field(WDTH, DBF_DOUBLE) {
       
 11482         prompt("Element Width")
       
 11483         special(SPC_NOMOD)
       
 11484         interest(3)
       
 11485     }
       
 11486     field(SGNL, DBF_DOUBLE) {
       
 11487         special(SPC_MOD)
       
 11488         prompt("Signal Value")
       
 11489     }
       
 11490     field(PREC, DBF_SHORT) {
       
 11491         prompt("Display Precision")
       
 11492         promptgroup("80 - Display")
       
 11493         interest(1)
       
 11494         prop(YES)
       
 11495     }
       
 11496     field(SVL, DBF_INLINK) {
       
 11497         prompt("Signal Value Location")
       
 11498         interest(1)
       
 11499         promptgroup("40 - Input")
       
 11500     }
       
 11501     field(BPTR, DBF_NOACCESS) {
       
 11502         prompt("Buffer Pointer")
       
 11503         extra("epicsUInt32 *bptr")
       
 11504         interest(4)
       
 11505         special(SPC_NOMOD)
       
 11506     }
       
 11507     field(WDOG, DBF_NOACCESS) {
       
 11508         extra("void *  wdog")
       
 11509         prompt("Watchdog callback")
       
 11510         interest(4)
       
 11511         special(SPC_NOMOD)
       
 11512     }
       
 11513     field(MDEL, DBF_SHORT) {
       
 11514         promptgroup("80 - Display")
       
 11515         interest(1)
       
 11516         prompt("Monitor Count Deadband")
       
 11517     }
       
 11518     field(MCNT, DBF_SHORT) {
       
 11519         prompt("Counts Since Monitor")
       
 11520         interest(3)
       
 11521         special(SPC_NOMOD)
       
 11522     }
       
 11523     field(SDEL, DBF_DOUBLE) {
       
 11524         promptgroup("80 - Display")
       
 11525         special(SPC_RESET)
       
 11526         interest(1)
       
 11527         prompt("Monitor Seconds Dband")
       
 11528     }
       
 11529     field(SIOL, DBF_INLINK) {
       
 11530         interest(1)
       
 11531         promptgroup("90 - Simulate")
       
 11532         prompt("Simulation Input Link")
       
 11533     }
       
 11534     field(SVAL, DBF_DOUBLE) {
       
 11535         prompt("Simulation Value")
       
 11536     }
       
 11537     field(SIML, DBF_INLINK) {
       
 11538         prompt("Simulation Mode Link")
       
 11539         promptgroup("90 - Simulate")
       
 11540         interest(1)
       
 11541     }
       
 11542     field(SIMM, DBF_MENU) {
       
 11543         prompt("Simulation Mode")
       
 11544         special(SPC_MOD)
       
 11545         menu(menuYesNo)
       
 11546         interest(1)
       
 11547     }
       
 11548     field(SIMS, DBF_MENU) {
       
 11549         prompt("Simulation Mode Severity")
       
 11550         promptgroup("90 - Simulate")
       
 11551         menu(menuAlarmSevr)
       
 11552         interest(2)
       
 11553     }
       
 11554     field(OLDSIMM, DBF_MENU) {
       
 11555         interest(4)
       
 11556         menu(menuSimm)
       
 11557         special(SPC_NOMOD)
       
 11558         prompt("Prev. Simulation Mode")
       
 11559     }
       
 11560     field(SSCN, DBF_MENU) {
       
 11561         promptgroup("90 - Simulate")
       
 11562         menu(menuScan)
       
 11563         interest(1)
       
 11564         prompt("Sim. Mode Scan")
       
 11565         initial("65535")
       
 11566     }
       
 11567     field(SDLY, DBF_DOUBLE) {
       
 11568         initial("-1.0")
       
 11569         prompt("Sim. Mode Async Delay")
       
 11570         interest(2)
       
 11571         promptgroup("90 - Simulate")
       
 11572     }
       
 11573     field(SIMPVT, DBF_NOACCESS) {
       
 11574         interest(4)
       
 11575         special(SPC_NOMOD)
       
 11576         prompt("Sim. Mode Private")
       
 11577         extra("CALLBACK            *simpvt")
       
 11578     }
       
 11579     field(HOPR, DBF_ULONG) {
       
 11580         interest(1)
       
 11581         prop(YES)
       
 11582         promptgroup("80 - Display")
       
 11583         prompt("High Operating Range")
       
 11584     }
       
 11585     field(LOPR, DBF_ULONG) {
       
 11586         promptgroup("80 - Display")
       
 11587         interest(1)
       
 11588         prop(YES)
       
 11589         prompt("Low Operating Range")
       
 11590     }
       
 11591 }
       
 11592 device(histogram, CONSTANT, devHistogramSoft, "Soft Channel")
       
 11593 recordtype(calcout) {
       
 11594     %#include "epicsTypes.h"
       
 11595     %#include "link.h"
       
 11596     %#include "epicsMutex.h"
       
 11597     %#include "ellLib.h"
       
 11598     %#include "epicsTime.h"
       
 11599     %#include "dbScan.h"
       
 11600     %#include "postfix.h"
       
 11601     field(NAME, DBF_STRING) {
       
 11602         special(SPC_NOMOD)
       
 11603         size(61)
       
 11604         prompt("Record Name")
       
 11605     }
       
 11606     field(DESC, DBF_STRING) {
       
 11607         promptgroup("10 - Common")
       
 11608         prompt("Descriptor")
       
 11609         size(41)
       
 11610     }
       
 11611     field(ASG, DBF_STRING) {
       
 11612         special(SPC_AS)
       
 11613         promptgroup("10 - Common")
       
 11614         size(29)
       
 11615         prompt("Access Security Group")
       
 11616     }
       
 11617     field(SCAN, DBF_MENU) {
       
 11618         prompt("Scan Mechanism")
       
 11619         promptgroup("20 - Scan")
       
 11620         interest(1)
       
 11621         menu(menuScan)
       
 11622         special(SPC_SCAN)
       
 11623     }
       
 11624     field(PINI, DBF_MENU) {
       
 11625         prompt("Process at iocInit")
       
 11626         promptgroup("20 - Scan")
       
 11627         interest(1)
       
 11628         menu(menuPini)
       
 11629     }
       
 11630     field(PHAS, DBF_SHORT) {
       
 11631         prompt("Scan Phase")
       
 11632         promptgroup("20 - Scan")
       
 11633         interest(1)
       
 11634         special(SPC_SCAN)
       
 11635     }
       
 11636     field(EVNT, DBF_STRING) {
       
 11637         size(40)
       
 11638         prompt("Event Name")
       
 11639         interest(1)
       
 11640         special(SPC_SCAN)
       
 11641         promptgroup("20 - Scan")
       
 11642     }
       
 11643     field(TSE, DBF_SHORT) {
       
 11644         interest(1)
       
 11645         promptgroup("20 - Scan")
       
 11646         prompt("Time Stamp Event")
       
 11647     }
       
 11648     field(TSEL, DBF_INLINK) {
       
 11649         promptgroup("20 - Scan")
       
 11650         interest(1)
       
 11651         prompt("Time Stamp Link")
       
 11652     }
       
 11653     field(DTYP, DBF_DEVICE) {
       
 11654         prompt("Device Type")
       
 11655         promptgroup("10 - Common")
       
 11656         interest(1)
       
 11657     }
       
 11658     field(DISV, DBF_SHORT) {
       
 11659         initial("1")
       
 11660         prompt("Disable Value")
       
 11661         promptgroup("20 - Scan")
       
 11662     }
       
 11663     field(DISA, DBF_SHORT) {
       
 11664         prompt("Disable")
       
 11665     }
       
 11666     field(SDIS, DBF_INLINK) {
       
 11667         prompt("Scanning Disable")
       
 11668         promptgroup("20 - Scan")
       
 11669         interest(1)
       
 11670     }
       
 11671     field(MLOK, DBF_NOACCESS) {
       
 11672         prompt("Monitor lock")
       
 11673         extra("epicsMutexId        mlok")
       
 11674         interest(4)
       
 11675         special(SPC_NOMOD)
       
 11676     }
       
 11677     field(MLIS, DBF_NOACCESS) {
       
 11678         prompt("Monitor List")
       
 11679         extra("ELLLIST             mlis")
       
 11680         special(SPC_NOMOD)
       
 11681         interest(4)
       
 11682     }
       
 11683     field(BKLNK, DBF_NOACCESS) {
       
 11684         extra("ELLLIST             bklnk")
       
 11685         prompt("Backwards link tracking")
       
 11686         interest(4)
       
 11687         special(SPC_NOMOD)
       
 11688     }
       
 11689     field(DISP, DBF_UCHAR) {
       
 11690         prompt("Disable putField")
       
 11691     }
       
 11692     field(PROC, DBF_UCHAR) {
       
 11693         pp(TRUE)
       
 11694         interest(3)
       
 11695         prompt("Force Processing")
       
 11696     }
       
 11697     field(STAT, DBF_MENU) {
       
 11698         menu(menuAlarmStat)
       
 11699         special(SPC_NOMOD)
       
 11700         initial("UDF")
       
 11701         prompt("Alarm Status")
       
 11702     }
       
 11703     field(SEVR, DBF_MENU) {
       
 11704         prompt("Alarm Severity")
       
 11705         menu(menuAlarmSevr)
       
 11706         special(SPC_NOMOD)
       
 11707     }
       
 11708     field(NSTA, DBF_MENU) {
       
 11709         special(SPC_NOMOD)
       
 11710         interest(2)
       
 11711         menu(menuAlarmStat)
       
 11712         prompt("New Alarm Status")
       
 11713     }
       
 11714     field(NSEV, DBF_MENU) {
       
 11715         prompt("New Alarm Severity")
       
 11716         special(SPC_NOMOD)
       
 11717         menu(menuAlarmSevr)
       
 11718         interest(2)
       
 11719     }
       
 11720     field(ACKS, DBF_MENU) {
       
 11721         menu(menuAlarmSevr)
       
 11722         interest(2)
       
 11723         special(SPC_NOMOD)
       
 11724         prompt("Alarm Ack Severity")
       
 11725     }
       
 11726     field(ACKT, DBF_MENU) {
       
 11727         prompt("Alarm Ack Transient")
       
 11728         initial("YES")
       
 11729         promptgroup("70 - Alarm")
       
 11730         special(SPC_NOMOD)
       
 11731         menu(menuYesNo)
       
 11732         interest(2)
       
 11733     }
       
 11734     field(DISS, DBF_MENU) {
       
 11735         interest(1)
       
 11736         menu(menuAlarmSevr)
       
 11737         promptgroup("70 - Alarm")
       
 11738         prompt("Disable Alarm Sevrty")
       
 11739     }
       
 11740     field(LCNT, DBF_UCHAR) {
       
 11741         interest(2)
       
 11742         special(SPC_NOMOD)
       
 11743         prompt("Lock Count")
       
 11744     }
       
 11745     field(PACT, DBF_UCHAR) {
       
 11746         prompt("Record active")
       
 11747         special(SPC_NOMOD)
       
 11748         interest(1)
       
 11749     }
       
 11750     field(PUTF, DBF_UCHAR) {
       
 11751         interest(1)
       
 11752         special(SPC_NOMOD)
       
 11753         prompt("dbPutField process")
       
 11754     }
       
 11755     field(RPRO, DBF_UCHAR) {
       
 11756         interest(1)
       
 11757         special(SPC_NOMOD)
       
 11758         prompt("Reprocess ")
       
 11759     }
       
 11760     field(ASP, DBF_NOACCESS) {
       
 11761         prompt("Access Security Pvt")
       
 11762         extra("struct asgMember    *asp")
       
 11763         interest(4)
       
 11764         special(SPC_NOMOD)
       
 11765     }
       
 11766     field(PPN, DBF_NOACCESS) {
       
 11767         special(SPC_NOMOD)
       
 11768         interest(4)
       
 11769         prompt("pprocessNotify")
       
 11770         extra("struct processNotify *ppn")
       
 11771     }
       
 11772     field(PPNR, DBF_NOACCESS) {
       
 11773         special(SPC_NOMOD)
       
 11774         interest(4)
       
 11775         extra("struct processNotifyRecord *ppnr")
       
 11776         prompt("pprocessNotifyRecord")
       
 11777     }
       
 11778     field(SPVT, DBF_NOACCESS) {
       
 11779         special(SPC_NOMOD)
       
 11780         interest(4)
       
 11781         prompt("Scan Private")
       
 11782         extra("struct scan_element *spvt")
       
 11783     }
       
 11784     field(RSET, DBF_NOACCESS) {
       
 11785         prompt("Address of RSET")
       
 11786         extra("struct typed_rset   *rset")
       
 11787         interest(4)
       
 11788         special(SPC_NOMOD)
       
 11789     }
       
 11790     field(DSET, DBF_NOACCESS) {
       
 11791         prompt("DSET address")
       
 11792         extra("struct dset         *dset")
       
 11793         special(SPC_NOMOD)
       
 11794         interest(4)
       
 11795     }
       
 11796     field(DPVT, DBF_NOACCESS) {
       
 11797         prompt("Device Private")
       
 11798         extra("void                *dpvt")
       
 11799         interest(4)
       
 11800         special(SPC_NOMOD)
       
 11801     }
       
 11802     field(RDES, DBF_NOACCESS) {
       
 11803         prompt("Address of dbRecordType")
       
 11804         extra("struct dbRecordType *rdes")
       
 11805         interest(4)
       
 11806         special(SPC_NOMOD)
       
 11807     }
       
 11808     field(LSET, DBF_NOACCESS) {
       
 11809         interest(4)
       
 11810         special(SPC_NOMOD)
       
 11811         prompt("Lock Set")
       
 11812         extra("struct lockRecord   *lset")
       
 11813     }
       
 11814     field(PRIO, DBF_MENU) {
       
 11815         interest(1)
       
 11816         menu(menuPriority)
       
 11817         special(SPC_SCAN)
       
 11818         promptgroup("20 - Scan")
       
 11819         prompt("Scheduling Priority")
       
 11820     }
       
 11821     field(TPRO, DBF_UCHAR) {
       
 11822         prompt("Trace Processing")
       
 11823     }
       
 11824     field(BKPT, DBF_NOACCESS) {
       
 11825         extra("char                bkpt")
       
 11826         prompt("Break Point")
       
 11827         interest(1)
       
 11828         special(SPC_NOMOD)
       
 11829     }
       
 11830     field(UDF, DBF_UCHAR) {
       
 11831         interest(1)
       
 11832         promptgroup("10 - Common")
       
 11833         pp(TRUE)
       
 11834         initial("1")
       
 11835         prompt("Undefined")
       
 11836     }
       
 11837     field(UDFS, DBF_MENU) {
       
 11838         initial("INVALID")
       
 11839         prompt("Undefined Alarm Sevrty")
       
 11840         menu(menuAlarmSevr)
       
 11841         interest(1)
       
 11842         promptgroup("70 - Alarm")
       
 11843     }
       
 11844     field(TIME, DBF_NOACCESS) {
       
 11845         interest(2)
       
 11846         special(SPC_NOMOD)
       
 11847         prompt("Time")
       
 11848         extra("epicsTimeStamp      time")
       
 11849     }
       
 11850     field(FLNK, DBF_FWDLINK) {
       
 11851         prompt("Forward Process Link")
       
 11852         promptgroup("20 - Scan")
       
 11853         interest(1)
       
 11854     }
       
 11855     field(RPVT, DBF_NOACCESS) {
       
 11856         prompt("Record Private")
       
 11857         extra("struct rpvtStruct *rpvt")
       
 11858         special(SPC_NOMOD)
       
 11859         interest(4)
       
 11860     }
       
 11861     field(VAL, DBF_DOUBLE) {
       
 11862         asl(ASL0)
       
 11863         prompt("Result")
       
 11864         promptgroup("50 - Output")
       
 11865     }
       
 11866     field(PVAL, DBF_DOUBLE) {
       
 11867         prompt("Previous Value")
       
 11868     }
       
 11869     field(CALC, DBF_STRING) {
       
 11870         pp(TRUE)
       
 11871         promptgroup("30 - Action")
       
 11872         special(SPC_CALC)
       
 11873         prompt("Calculation")
       
 11874         initial("0")
       
 11875         size(80)
       
 11876     }
       
 11877     field(CLCV, DBF_LONG) {
       
 11878         prompt("CALC Valid")
       
 11879         interest(1)
       
 11880     }
       
 11881     field(INPA, DBF_INLINK) {
       
 11882         promptgroup("41 - Input A-F")
       
 11883         special(SPC_MOD)
       
 11884         interest(1)
       
 11885         prompt("Input A")
       
 11886     }
       
 11887     field(INPB, DBF_INLINK) {
       
 11888         prompt("Input B")
       
 11889         special(SPC_MOD)
       
 11890         interest(1)
       
 11891         promptgroup("41 - Input A-F")
       
 11892     }
       
 11893     field(INPC, DBF_INLINK) {
       
 11894         prompt("Input C")
       
 11895         special(SPC_MOD)
       
 11896         interest(1)
       
 11897         promptgroup("41 - Input A-F")
       
 11898     }
       
 11899     field(INPD, DBF_INLINK) {
       
 11900         prompt("Input D")
       
 11901         promptgroup("41 - Input A-F")
       
 11902         interest(1)
       
 11903         special(SPC_MOD)
       
 11904     }
       
 11905     field(INPE, DBF_INLINK) {
       
 11906         prompt("Input E")
       
 11907         interest(1)
       
 11908         special(SPC_MOD)
       
 11909         promptgroup("41 - Input A-F")
       
 11910     }
       
 11911     field(INPF, DBF_INLINK) {
       
 11912         prompt("Input F")
       
 11913         interest(1)
       
 11914         special(SPC_MOD)
       
 11915         promptgroup("41 - Input A-F")
       
 11916     }
       
 11917     field(INPG, DBF_INLINK) {
       
 11918         special(SPC_MOD)
       
 11919         interest(1)
       
 11920         promptgroup("42 - Input G-L")
       
 11921         prompt("Input G")
       
 11922     }
       
 11923     field(INPH, DBF_INLINK) {
       
 11924         prompt("Input H")
       
 11925         promptgroup("42 - Input G-L")
       
 11926         special(SPC_MOD)
       
 11927         interest(1)
       
 11928     }
       
 11929     field(INPI, DBF_INLINK) {
       
 11930         interest(1)
       
 11931         special(SPC_MOD)
       
 11932         promptgroup("42 - Input G-L")
       
 11933         prompt("Input I")
       
 11934     }
       
 11935     field(INPJ, DBF_INLINK) {
       
 11936         promptgroup("42 - Input G-L")
       
 11937         special(SPC_MOD)
       
 11938         interest(1)
       
 11939         prompt("Input J")
       
 11940     }
       
 11941     field(INPK, DBF_INLINK) {
       
 11942         prompt("Input K")
       
 11943         promptgroup("42 - Input G-L")
       
 11944         interest(1)
       
 11945         special(SPC_MOD)
       
 11946     }
       
 11947     field(INPL, DBF_INLINK) {
       
 11948         prompt("Input L")
       
 11949         promptgroup("42 - Input G-L")
       
 11950         special(SPC_MOD)
       
 11951         interest(1)
       
 11952     }
       
 11953     field(OUT, DBF_OUTLINK) {
       
 11954         prompt("Output Specification")
       
 11955         special(SPC_MOD)
       
 11956         interest(1)
       
 11957         promptgroup("50 - Output")
       
 11958     }
       
 11959     field(INAV, DBF_MENU) {
       
 11960         initial("1")
       
 11961         prompt("INPA PV Status")
       
 11962         interest(1)
       
 11963         menu(calcoutINAV)
       
 11964         special(SPC_NOMOD)
       
 11965     }
       
 11966     field(INBV, DBF_MENU) {
       
 11967         initial("1")
       
 11968         prompt("INPB PV Status")
       
 11969         special(SPC_NOMOD)
       
 11970         interest(1)
       
 11971         menu(calcoutINAV)
       
 11972     }
       
 11973     field(INCV, DBF_MENU) {
       
 11974         special(SPC_NOMOD)
       
 11975         menu(calcoutINAV)
       
 11976         interest(1)
       
 11977         prompt("INPC PV Status")
       
 11978         initial("1")
       
 11979     }
       
 11980     field(INDV, DBF_MENU) {
       
 11981         special(SPC_NOMOD)
       
 11982         interest(1)
       
 11983         menu(calcoutINAV)
       
 11984         initial("1")
       
 11985         prompt("INPD PV Status")
       
 11986     }
       
 11987     field(INEV, DBF_MENU) {
       
 11988         prompt("INPE PV Status")
       
 11989         initial("1")
       
 11990         special(SPC_NOMOD)
       
 11991         interest(1)
       
 11992         menu(calcoutINAV)
       
 11993     }
       
 11994     field(INFV, DBF_MENU) {
       
 11995         prompt("INPF PV Status")
       
 11996         initial("1")
       
 11997         special(SPC_NOMOD)
       
 11998         interest(1)
       
 11999         menu(calcoutINAV)
       
 12000     }
       
 12001     field(INGV, DBF_MENU) {
       
 12002         prompt("INPG PV Status")
       
 12003         initial("1")
       
 12004         special(SPC_NOMOD)
       
 12005         menu(calcoutINAV)
       
 12006         interest(1)
       
 12007     }
       
 12008     field(INHV, DBF_MENU) {
       
 12009         special(SPC_NOMOD)
       
 12010         menu(calcoutINAV)
       
 12011         interest(1)
       
 12012         prompt("INPH PV Status")
       
 12013         initial("1")
       
 12014     }
       
 12015     field(INIV, DBF_MENU) {
       
 12016         interest(1)
       
 12017         menu(calcoutINAV)
       
 12018         special(SPC_NOMOD)
       
 12019         prompt("INPI PV Status")
       
 12020         initial("1")
       
 12021     }
       
 12022     field(INJV, DBF_MENU) {
       
 12023         menu(calcoutINAV)
       
 12024         interest(1)
       
 12025         special(SPC_NOMOD)
       
 12026         initial("1")
       
 12027         prompt("INPJ PV Status")
       
 12028     }
       
 12029     field(INKV, DBF_MENU) {
       
 12030         initial("1")
       
 12031         prompt("INPK PV Status")
       
 12032         special(SPC_NOMOD)
       
 12033         menu(calcoutINAV)
       
 12034         interest(1)
       
 12035     }
       
 12036     field(INLV, DBF_MENU) {
       
 12037         menu(calcoutINAV)
       
 12038         interest(1)
       
 12039         special(SPC_NOMOD)
       
 12040         prompt("INPL PV Status")
       
 12041         initial("1")
       
 12042     }
       
 12043     field(OUTV, DBF_MENU) {
       
 12044         menu(calcoutINAV)
       
 12045         interest(1)
       
 12046         special(SPC_NOMOD)
       
 12047         prompt("OUT PV Status")
       
 12048     }
       
 12049     field(OOPT, DBF_MENU) {
       
 12050         prompt("Output Execute Opt")
       
 12051         menu(calcoutOOPT)
       
 12052         interest(1)
       
 12053         promptgroup("50 - Output")
       
 12054     }
       
 12055     field(ODLY, DBF_DOUBLE) {
       
 12056         prompt("Output Execute Delay")
       
 12057         asl(ASL0)
       
 12058         promptgroup("50 - Output")
       
 12059         interest(1)
       
 12060     }
       
 12061     field(DLYA, DBF_USHORT) {
       
 12062         asl(ASL0)
       
 12063         prompt("Output Delay Active")
       
 12064         special(SPC_NOMOD)
       
 12065     }
       
 12066     field(DOPT, DBF_MENU) {
       
 12067         prompt("Output Data Opt")
       
 12068         promptgroup("30 - Action")
       
 12069         interest(1)
       
 12070         menu(calcoutDOPT)
       
 12071     }
       
 12072     field(OCAL, DBF_STRING) {
       
 12073         special(SPC_CALC)
       
 12074         pp(TRUE)
       
 12075         promptgroup("30 - Action")
       
 12076         size(80)
       
 12077         initial("0")
       
 12078         prompt("Output Calculation")
       
 12079     }
       
 12080     field(OCLV, DBF_LONG) {
       
 12081         prompt("OCAL Valid")
       
 12082         interest(1)
       
 12083     }
       
 12084     field(OEVT, DBF_STRING) {
       
 12085         size(40)
       
 12086         asl(ASL0)
       
 12087         prompt("Event To Issue")
       
 12088         special(SPC_MOD)
       
 12089         promptgroup("30 - Action")
       
 12090     }
       
 12091     field(EPVT, DBF_NOACCESS) {
       
 12092         extra("EVENTPVT epvt")
       
 12093         prompt("Event private")
       
 12094         special(SPC_NOMOD)
       
 12095         interest(4)
       
 12096     }
       
 12097     field(IVOA, DBF_MENU) {
       
 12098         interest(2)
       
 12099         menu(menuIvoa)
       
 12100         promptgroup("50 - Output")
       
 12101         prompt("INVALID output action")
       
 12102     }
       
 12103     field(IVOV, DBF_DOUBLE) {
       
 12104         prompt("INVALID output value")
       
 12105         promptgroup("50 - Output")
       
 12106         interest(2)
       
 12107     }
       
 12108     field(EGU, DBF_STRING) {
       
 12109         interest(1)
       
 12110         prop(YES)
       
 12111         promptgroup("80 - Display")
       
 12112         size(16)
       
 12113         prompt("Engineering Units")
       
 12114     }
       
 12115     field(PREC, DBF_SHORT) {
       
 12116         prompt("Display Precision")
       
 12117         promptgroup("80 - Display")
       
 12118         interest(1)
       
 12119         prop(YES)
       
 12120     }
       
 12121     field(HOPR, DBF_DOUBLE) {
       
 12122         promptgroup("80 - Display")
       
 12123         interest(1)
       
 12124         prop(YES)
       
 12125         prompt("High Operating Rng")
       
 12126     }
       
 12127     field(LOPR, DBF_DOUBLE) {
       
 12128         interest(1)
       
 12129         prop(YES)
       
 12130         promptgroup("80 - Display")
       
 12131         prompt("Low Operating Range")
       
 12132     }
       
 12133     field(HIHI, DBF_DOUBLE) {
       
 12134         pp(TRUE)
       
 12135         promptgroup("70 - Alarm")
       
 12136         prop(YES)
       
 12137         interest(1)
       
 12138         prompt("Hihi Alarm Limit")
       
 12139     }
       
 12140     field(LOLO, DBF_DOUBLE) {
       
 12141         prompt("Lolo Alarm Limit")
       
 12142         pp(TRUE)
       
 12143         promptgroup("70 - Alarm")
       
 12144         prop(YES)
       
 12145         interest(1)
       
 12146     }
       
 12147     field(HIGH, DBF_DOUBLE) {
       
 12148         prompt("High Alarm Limit")
       
 12149         prop(YES)
       
 12150         interest(1)
       
 12151         pp(TRUE)
       
 12152         promptgroup("70 - Alarm")
       
 12153     }
       
 12154     field(LOW, DBF_DOUBLE) {
       
 12155         interest(1)
       
 12156         prop(YES)
       
 12157         promptgroup("70 - Alarm")
       
 12158         pp(TRUE)
       
 12159         prompt("Low Alarm Limit")
       
 12160     }
       
 12161     field(HHSV, DBF_MENU) {
       
 12162         prompt("Hihi Severity")
       
 12163         promptgroup("70 - Alarm")
       
 12164         pp(TRUE)
       
 12165         interest(1)
       
 12166         menu(menuAlarmSevr)
       
 12167         prop(YES)
       
 12168     }
       
 12169     field(LLSV, DBF_MENU) {
       
 12170         promptgroup("70 - Alarm")
       
 12171         pp(TRUE)
       
 12172         menu(menuAlarmSevr)
       
 12173         prop(YES)
       
 12174         interest(1)
       
 12175         prompt("Lolo Severity")
       
 12176     }
       
 12177     field(HSV, DBF_MENU) {
       
 12178         pp(TRUE)
       
 12179         promptgroup("70 - Alarm")
       
 12180         prop(YES)
       
 12181         menu(menuAlarmSevr)
       
 12182         interest(1)
       
 12183         prompt("High Severity")
       
 12184     }
       
 12185     field(LSV, DBF_MENU) {
       
 12186         promptgroup("70 - Alarm")
       
 12187         pp(TRUE)
       
 12188         menu(menuAlarmSevr)
       
 12189         interest(1)
       
 12190         prop(YES)
       
 12191         prompt("Low Severity")
       
 12192     }
       
 12193     field(HYST, DBF_DOUBLE) {
       
 12194         interest(1)
       
 12195         promptgroup("70 - Alarm")
       
 12196         prompt("Alarm Deadband")
       
 12197     }
       
 12198     field(ADEL, DBF_DOUBLE) {
       
 12199         interest(1)
       
 12200         promptgroup("80 - Display")
       
 12201         prompt("Archive Deadband")
       
 12202     }
       
 12203     field(MDEL, DBF_DOUBLE) {
       
 12204         interest(1)
       
 12205         promptgroup("80 - Display")
       
 12206         prompt("Monitor Deadband")
       
 12207     }
       
 12208     field(A, DBF_DOUBLE) {
       
 12209         pp(TRUE)
       
 12210         prompt("Value of Input A")
       
 12211     }
       
 12212     field(B, DBF_DOUBLE) {
       
 12213         pp(TRUE)
       
 12214         prompt("Value of Input B")
       
 12215     }
       
 12216     field(C, DBF_DOUBLE) {
       
 12217         pp(TRUE)
       
 12218         prompt("Value of Input C")
       
 12219     }
       
 12220     field(D, DBF_DOUBLE) {
       
 12221         prompt("Value of Input D")
       
 12222         pp(TRUE)
       
 12223     }
       
 12224     field(E, DBF_DOUBLE) {
       
 12225         pp(TRUE)
       
 12226         prompt("Value of Input E")
       
 12227     }
       
 12228     field(F, DBF_DOUBLE) {
       
 12229         prompt("Value of Input F")
       
 12230         pp(TRUE)
       
 12231     }
       
 12232     field(G, DBF_DOUBLE) {
       
 12233         prompt("Value of Input G")
       
 12234         pp(TRUE)
       
 12235     }
       
 12236     field(H, DBF_DOUBLE) {
       
 12237         prompt("Value of Input H")
       
 12238         pp(TRUE)
       
 12239     }
       
 12240     field(I, DBF_DOUBLE) {
       
 12241         prompt("Value of Input I")
       
 12242         pp(TRUE)
       
 12243     }
       
 12244     field(J, DBF_DOUBLE) {
       
 12245         pp(TRUE)
       
 12246         prompt("Value of Input J")
       
 12247     }
       
 12248     field(K, DBF_DOUBLE) {
       
 12249         prompt("Value of Input K")
       
 12250         pp(TRUE)
       
 12251     }
       
 12252     field(L, DBF_DOUBLE) {
       
 12253         pp(TRUE)
       
 12254         prompt("Value of Input L")
       
 12255     }
       
 12256     field(OVAL, DBF_DOUBLE) {
       
 12257         asl(ASL0)
       
 12258         prompt("Output Value")
       
 12259     }
       
 12260     field(LA, DBF_DOUBLE) {
       
 12261         prompt("Prev Value of A")
       
 12262         interest(3)
       
 12263         special(SPC_NOMOD)
       
 12264     }
       
 12265     field(LB, DBF_DOUBLE) {
       
 12266         special(SPC_NOMOD)
       
 12267         interest(3)
       
 12268         prompt("Prev Value of B")
       
 12269     }
       
 12270     field(LC, DBF_DOUBLE) {
       
 12271         prompt("Prev Value of C")
       
 12272         special(SPC_NOMOD)
       
 12273         interest(3)
       
 12274     }
       
 12275     field(LD, DBF_DOUBLE) {
       
 12276         interest(3)
       
 12277         special(SPC_NOMOD)
       
 12278         prompt("Prev Value of D")
       
 12279     }
       
 12280     field(LE, DBF_DOUBLE) {
       
 12281         prompt("Prev Value of E")
       
 12282         special(SPC_NOMOD)
       
 12283         interest(3)
       
 12284     }
       
 12285     field(LF, DBF_DOUBLE) {
       
 12286         special(SPC_NOMOD)
       
 12287         interest(3)
       
 12288         prompt("Prev Value of F")
       
 12289     }
       
 12290     field(LG, DBF_DOUBLE) {
       
 12291         prompt("Prev Value of G")
       
 12292         special(SPC_NOMOD)
       
 12293         interest(3)
       
 12294     }
       
 12295     field(LH, DBF_DOUBLE) {
       
 12296         interest(3)
       
 12297         special(SPC_NOMOD)
       
 12298         prompt("Prev Value of H")
       
 12299     }
       
 12300     field(LI, DBF_DOUBLE) {
       
 12301         prompt("Prev Value of I")
       
 12302         special(SPC_NOMOD)
       
 12303         interest(3)
       
 12304     }
       
 12305     field(LJ, DBF_DOUBLE) {
       
 12306         prompt("Prev Value of J")
       
 12307         special(SPC_NOMOD)
       
 12308         interest(3)
       
 12309     }
       
 12310     field(LK, DBF_DOUBLE) {
       
 12311         special(SPC_NOMOD)
       
 12312         interest(3)
       
 12313         prompt("Prev Value of K")
       
 12314     }
       
 12315     field(LL, DBF_DOUBLE) {
       
 12316         prompt("Prev Value of L")
       
 12317         interest(3)
       
 12318         special(SPC_NOMOD)
       
 12319     }
       
 12320     field(POVL, DBF_DOUBLE) {
       
 12321         prompt("Prev Value of OVAL")
       
 12322         asl(ASL0)
       
 12323     }
       
 12324     field(LALM, DBF_DOUBLE) {
       
 12325         special(SPC_NOMOD)
       
 12326         interest(3)
       
 12327         prompt("Last Value Alarmed")
       
 12328     }
       
 12329     field(ALST, DBF_DOUBLE) {
       
 12330         interest(3)
       
 12331         special(SPC_NOMOD)
       
 12332         prompt("Last Value Archived")
       
 12333     }
       
 12334     field(MLST, DBF_DOUBLE) {
       
 12335         prompt("Last Val Monitored")
       
 12336         interest(3)
       
 12337         special(SPC_NOMOD)
       
 12338     }
       
 12339     field(RPCL, DBF_NOACCESS) {
       
 12340         extra("char	rpcl[INFIX_TO_POSTFIX_SIZE(80)]")
       
 12341         prompt("Reverse Polish Calc")
       
 12342         special(SPC_NOMOD)
       
 12343         interest(4)
       
 12344     }
       
 12345     field(ORPC, DBF_NOACCESS) {
       
 12346         interest(4)
       
 12347         special(SPC_NOMOD)
       
 12348         extra("char	orpc[INFIX_TO_POSTFIX_SIZE(80)]")
       
 12349         prompt("Reverse Polish OCalc")
       
 12350     }
       
 12351 }
       
 12352 device(calcout, CONSTANT, devCalcoutSoft, "Soft Channel")
       
 12353 device(calcout, CONSTANT, devCalcoutSoftCallback, "Async Soft Channel")
       
 12354 device(calcout, INST_IO, devcalcoutStream, "stream")
       
 12355 recordtype(mbboDirect) {
       
 12356     %#include "epicsTypes.h"
       
 12357     %#include "link.h"
       
 12358     %#include "epicsMutex.h"
       
 12359     %#include "ellLib.h"
       
 12360     %#include "epicsTime.h"
       
 12361     %#include "callback.h"
       
 12362     field(NAME, DBF_STRING) {
       
 12363         special(SPC_NOMOD)
       
 12364         prompt("Record Name")
       
 12365         size(61)
       
 12366     }
       
 12367     field(DESC, DBF_STRING) {
       
 12368         promptgroup("10 - Common")
       
 12369         prompt("Descriptor")
       
 12370         size(41)
       
 12371     }
       
 12372     field(ASG, DBF_STRING) {
       
 12373         prompt("Access Security Group")
       
 12374         size(29)
       
 12375         promptgroup("10 - Common")
       
 12376         special(SPC_AS)
       
 12377     }
       
 12378     field(SCAN, DBF_MENU) {
       
 12379         interest(1)
       
 12380         menu(menuScan)
       
 12381         special(SPC_SCAN)
       
 12382         promptgroup("20 - Scan")
       
 12383         prompt("Scan Mechanism")
       
 12384     }
       
 12385     field(PINI, DBF_MENU) {
       
 12386         prompt("Process at iocInit")
       
 12387         interest(1)
       
 12388         menu(menuPini)
       
 12389         promptgroup("20 - Scan")
       
 12390     }
       
 12391     field(PHAS, DBF_SHORT) {
       
 12392         promptgroup("20 - Scan")
       
 12393         special(SPC_SCAN)
       
 12394         interest(1)
       
 12395         prompt("Scan Phase")
       
 12396     }
       
 12397     field(EVNT, DBF_STRING) {
       
 12398         promptgroup("20 - Scan")
       
 12399         interest(1)
       
 12400         special(SPC_SCAN)
       
 12401         prompt("Event Name")
       
 12402         size(40)
       
 12403     }
       
 12404     field(TSE, DBF_SHORT) {
       
 12405         prompt("Time Stamp Event")
       
 12406         promptgroup("20 - Scan")
       
 12407         interest(1)
       
 12408     }
       
 12409     field(TSEL, DBF_INLINK) {
       
 12410         interest(1)
       
 12411         promptgroup("20 - Scan")
       
 12412         prompt("Time Stamp Link")
       
 12413     }
       
 12414     field(DTYP, DBF_DEVICE) {
       
 12415         promptgroup("10 - Common")
       
 12416         interest(1)
       
 12417         prompt("Device Type")
       
 12418     }
       
 12419     field(DISV, DBF_SHORT) {
       
 12420         promptgroup("20 - Scan")
       
 12421         prompt("Disable Value")
       
 12422         initial("1")
       
 12423     }
       
 12424     field(DISA, DBF_SHORT) {
       
 12425         prompt("Disable")
       
 12426     }
       
 12427     field(SDIS, DBF_INLINK) {
       
 12428         prompt("Scanning Disable")
       
 12429         interest(1)
       
 12430         promptgroup("20 - Scan")
       
 12431     }
       
 12432     field(MLOK, DBF_NOACCESS) {
       
 12433         interest(4)
       
 12434         special(SPC_NOMOD)
       
 12435         prompt("Monitor lock")
       
 12436         extra("epicsMutexId        mlok")
       
 12437     }
       
 12438     field(MLIS, DBF_NOACCESS) {
       
 12439         special(SPC_NOMOD)
       
 12440         interest(4)
       
 12441         extra("ELLLIST             mlis")
       
 12442         prompt("Monitor List")
       
 12443     }
       
 12444     field(BKLNK, DBF_NOACCESS) {
       
 12445         extra("ELLLIST             bklnk")
       
 12446         prompt("Backwards link tracking")
       
 12447         interest(4)
       
 12448         special(SPC_NOMOD)
       
 12449     }
       
 12450     field(DISP, DBF_UCHAR) {
       
 12451         prompt("Disable putField")
       
 12452     }
       
 12453     field(PROC, DBF_UCHAR) {
       
 12454         prompt("Force Processing")
       
 12455         interest(3)
       
 12456         pp(TRUE)
       
 12457     }
       
 12458     field(STAT, DBF_MENU) {
       
 12459         prompt("Alarm Status")
       
 12460         initial("UDF")
       
 12461         menu(menuAlarmStat)
       
 12462         special(SPC_NOMOD)
       
 12463     }
       
 12464     field(SEVR, DBF_MENU) {
       
 12465         menu(menuAlarmSevr)
       
 12466         special(SPC_NOMOD)
       
 12467         prompt("Alarm Severity")
       
 12468     }
       
 12469     field(NSTA, DBF_MENU) {
       
 12470         menu(menuAlarmStat)
       
 12471         interest(2)
       
 12472         special(SPC_NOMOD)
       
 12473         prompt("New Alarm Status")
       
 12474     }
       
 12475     field(NSEV, DBF_MENU) {
       
 12476         prompt("New Alarm Severity")
       
 12477         special(SPC_NOMOD)
       
 12478         menu(menuAlarmSevr)
       
 12479         interest(2)
       
 12480     }
       
 12481     field(ACKS, DBF_MENU) {
       
 12482         prompt("Alarm Ack Severity")
       
 12483         special(SPC_NOMOD)
       
 12484         interest(2)
       
 12485         menu(menuAlarmSevr)
       
 12486     }
       
 12487     field(ACKT, DBF_MENU) {
       
 12488         initial("YES")
       
 12489         prompt("Alarm Ack Transient")
       
 12490         special(SPC_NOMOD)
       
 12491         interest(2)
       
 12492         menu(menuYesNo)
       
 12493         promptgroup("70 - Alarm")
       
 12494     }
       
 12495     field(DISS, DBF_MENU) {
       
 12496         promptgroup("70 - Alarm")
       
 12497         menu(menuAlarmSevr)
       
 12498         interest(1)
       
 12499         prompt("Disable Alarm Sevrty")
       
 12500     }
       
 12501     field(LCNT, DBF_UCHAR) {
       
 12502         prompt("Lock Count")
       
 12503         special(SPC_NOMOD)
       
 12504         interest(2)
       
 12505     }
       
 12506     field(PACT, DBF_UCHAR) {
       
 12507         special(SPC_NOMOD)
       
 12508         interest(1)
       
 12509         prompt("Record active")
       
 12510     }
       
 12511     field(PUTF, DBF_UCHAR) {
       
 12512         interest(1)
       
 12513         special(SPC_NOMOD)
       
 12514         prompt("dbPutField process")
       
 12515     }
       
 12516     field(RPRO, DBF_UCHAR) {
       
 12517         prompt("Reprocess ")
       
 12518         interest(1)
       
 12519         special(SPC_NOMOD)
       
 12520     }
       
 12521     field(ASP, DBF_NOACCESS) {
       
 12522         interest(4)
       
 12523         special(SPC_NOMOD)
       
 12524         extra("struct asgMember    *asp")
       
 12525         prompt("Access Security Pvt")
       
 12526     }
       
 12527     field(PPN, DBF_NOACCESS) {
       
 12528         extra("struct processNotify *ppn")
       
 12529         prompt("pprocessNotify")
       
 12530         interest(4)
       
 12531         special(SPC_NOMOD)
       
 12532     }
       
 12533     field(PPNR, DBF_NOACCESS) {
       
 12534         interest(4)
       
 12535         special(SPC_NOMOD)
       
 12536         extra("struct processNotifyRecord *ppnr")
       
 12537         prompt("pprocessNotifyRecord")
       
 12538     }
       
 12539     field(SPVT, DBF_NOACCESS) {
       
 12540         prompt("Scan Private")
       
 12541         extra("struct scan_element *spvt")
       
 12542         special(SPC_NOMOD)
       
 12543         interest(4)
       
 12544     }
       
 12545     field(RSET, DBF_NOACCESS) {
       
 12546         prompt("Address of RSET")
       
 12547         extra("struct typed_rset   *rset")
       
 12548         special(SPC_NOMOD)
       
 12549         interest(4)
       
 12550     }
       
 12551     field(DSET, DBF_NOACCESS) {
       
 12552         prompt("DSET address")
       
 12553         extra("struct dset         *dset")
       
 12554         interest(4)
       
 12555         special(SPC_NOMOD)
       
 12556     }
       
 12557     field(DPVT, DBF_NOACCESS) {
       
 12558         extra("void                *dpvt")
       
 12559         prompt("Device Private")
       
 12560         special(SPC_NOMOD)
       
 12561         interest(4)
       
 12562     }
       
 12563     field(RDES, DBF_NOACCESS) {
       
 12564         extra("struct dbRecordType *rdes")
       
 12565         prompt("Address of dbRecordType")
       
 12566         interest(4)
       
 12567         special(SPC_NOMOD)
       
 12568     }
       
 12569     field(LSET, DBF_NOACCESS) {
       
 12570         special(SPC_NOMOD)
       
 12571         interest(4)
       
 12572         extra("struct lockRecord   *lset")
       
 12573         prompt("Lock Set")
       
 12574     }
       
 12575     field(PRIO, DBF_MENU) {
       
 12576         prompt("Scheduling Priority")
       
 12577         promptgroup("20 - Scan")
       
 12578         special(SPC_SCAN)
       
 12579         interest(1)
       
 12580         menu(menuPriority)
       
 12581     }
       
 12582     field(TPRO, DBF_UCHAR) {
       
 12583         prompt("Trace Processing")
       
 12584     }
       
 12585     field(BKPT, DBF_NOACCESS) {
       
 12586         special(SPC_NOMOD)
       
 12587         interest(1)
       
 12588         extra("char                bkpt")
       
 12589         prompt("Break Point")
       
 12590     }
       
 12591     field(UDF, DBF_UCHAR) {
       
 12592         pp(TRUE)
       
 12593         promptgroup("10 - Common")
       
 12594         interest(1)
       
 12595         prompt("Undefined")
       
 12596         initial("1")
       
 12597     }
       
 12598     field(UDFS, DBF_MENU) {
       
 12599         promptgroup("70 - Alarm")
       
 12600         interest(1)
       
 12601         menu(menuAlarmSevr)
       
 12602         prompt("Undefined Alarm Sevrty")
       
 12603         initial("INVALID")
       
 12604     }
       
 12605     field(TIME, DBF_NOACCESS) {
       
 12606         interest(2)
       
 12607         special(SPC_NOMOD)
       
 12608         extra("epicsTimeStamp      time")
       
 12609         prompt("Time")
       
 12610     }
       
 12611     field(FLNK, DBF_FWDLINK) {
       
 12612         interest(1)
       
 12613         promptgroup("20 - Scan")
       
 12614         prompt("Forward Process Link")
       
 12615     }
       
 12616     field(VAL, DBF_LONG) {
       
 12617         pp(TRUE)
       
 12618         promptgroup("50 - Output")
       
 12619         asl(ASL0)
       
 12620         prompt("Word")
       
 12621     }
       
 12622     field(OMSL, DBF_MENU) {
       
 12623         prompt("Output Mode Select")
       
 12624         pp(TRUE)
       
 12625         promptgroup("50 - Output")
       
 12626         special(SPC_RESET)
       
 12627         interest(1)
       
 12628         menu(menuOmsl)
       
 12629     }
       
 12630     field(NOBT, DBF_SHORT) {
       
 12631         prompt("Number of Bits")
       
 12632         promptgroup("50 - Output")
       
 12633         special(SPC_NOMOD)
       
 12634         interest(1)
       
 12635     }
       
 12636     field(DOL, DBF_INLINK) {
       
 12637         promptgroup("40 - Input")
       
 12638         interest(1)
       
 12639         prompt("Desired Output Loc")
       
 12640     }
       
 12641     field(OUT, DBF_OUTLINK) {
       
 12642         interest(1)
       
 12643         promptgroup("50 - Output")
       
 12644         prompt("Output Specification")
       
 12645     }
       
 12646     field(RVAL, DBF_ULONG) {
       
 12647         special(SPC_NOMOD)
       
 12648         pp(TRUE)
       
 12649         prompt("Raw Value")
       
 12650     }
       
 12651     field(ORAW, DBF_ULONG) {
       
 12652         special(SPC_NOMOD)
       
 12653         interest(3)
       
 12654         prompt("Prev Raw Value")
       
 12655     }
       
 12656     field(RBV, DBF_ULONG) {
       
 12657         prompt("Readback Value")
       
 12658         special(SPC_NOMOD)
       
 12659     }
       
 12660     field(ORBV, DBF_ULONG) {
       
 12661         special(SPC_NOMOD)
       
 12662         interest(3)
       
 12663         prompt("Prev Readback Value")
       
 12664     }
       
 12665     field(MASK, DBF_ULONG) {
       
 12666         prompt("Hardware Mask")
       
 12667         interest(1)
       
 12668         special(SPC_NOMOD)
       
 12669     }
       
 12670     field(MLST, DBF_LONG) {
       
 12671         prompt("Last Value Monitored")
       
 12672         special(SPC_NOMOD)
       
 12673         interest(3)
       
 12674     }
       
 12675     field(SHFT, DBF_USHORT) {
       
 12676         promptgroup("50 - Output")
       
 12677         interest(1)
       
 12678         prompt("Shift")
       
 12679     }
       
 12680     field(SIOL, DBF_OUTLINK) {
       
 12681         prompt("Simulation Output Link")
       
 12682         interest(1)
       
 12683         promptgroup("90 - Simulate")
       
 12684     }
       
 12685     field(SIML, DBF_INLINK) {
       
 12686         prompt("Simulation Mode Link")
       
 12687         promptgroup("90 - Simulate")
       
 12688         interest(1)
       
 12689     }
       
 12690     field(SIMM, DBF_MENU) {
       
 12691         special(SPC_MOD)
       
 12692         interest(1)
       
 12693         menu(menuYesNo)
       
 12694         prompt("Simulation Mode")
       
 12695     }
       
 12696     field(SIMS, DBF_MENU) {
       
 12697         prompt("Simulation Mode Severity")
       
 12698         promptgroup("90 - Simulate")
       
 12699         menu(menuAlarmSevr)
       
 12700         interest(2)
       
 12701     }
       
 12702     field(OLDSIMM, DBF_MENU) {
       
 12703         prompt("Prev. Simulation Mode")
       
 12704         menu(menuSimm)
       
 12705         interest(4)
       
 12706         special(SPC_NOMOD)
       
 12707     }
       
 12708     field(SSCN, DBF_MENU) {
       
 12709         interest(1)
       
 12710         menu(menuScan)
       
 12711         promptgroup("90 - Simulate")
       
 12712         initial("65535")
       
 12713         prompt("Sim. Mode Scan")
       
 12714     }
       
 12715     field(SDLY, DBF_DOUBLE) {
       
 12716         promptgroup("90 - Simulate")
       
 12717         interest(2)
       
 12718         prompt("Sim. Mode Async Delay")
       
 12719         initial("-1.0")
       
 12720     }
       
 12721     field(SIMPVT, DBF_NOACCESS) {
       
 12722         special(SPC_NOMOD)
       
 12723         interest(4)
       
 12724         prompt("Sim. Mode Private")
       
 12725         extra("CALLBACK            *simpvt")
       
 12726     }
       
 12727     field(IVOA, DBF_MENU) {
       
 12728         prompt("INVALID outpt action")
       
 12729         promptgroup("50 - Output")
       
 12730         menu(menuIvoa)
       
 12731         interest(2)
       
 12732     }
       
 12733     field(IVOV, DBF_LONG) {
       
 12734         interest(2)
       
 12735         promptgroup("50 - Output")
       
 12736         prompt("INVALID output value")
       
 12737     }
       
 12738     field(B0, DBF_UCHAR) {
       
 12739         prompt("Bit 0")
       
 12740         interest(1)
       
 12741         special(SPC_MOD)
       
 12742         promptgroup("51 - Output 0-7")
       
 12743         pp(TRUE)
       
 12744     }
       
 12745     field(B1, DBF_UCHAR) {
       
 12746         interest(1)
       
 12747         special(SPC_MOD)
       
 12748         promptgroup("51 - Output 0-7")
       
 12749         pp(TRUE)
       
 12750         prompt("Bit 1")
       
 12751     }
       
 12752     field(B2, DBF_UCHAR) {
       
 12753         prompt("Bit 2")
       
 12754         special(SPC_MOD)
       
 12755         interest(1)
       
 12756         promptgroup("51 - Output 0-7")
       
 12757         pp(TRUE)
       
 12758     }
       
 12759     field(B3, DBF_UCHAR) {
       
 12760         special(SPC_MOD)
       
 12761         interest(1)
       
 12762         pp(TRUE)
       
 12763         promptgroup("51 - Output 0-7")
       
 12764         prompt("Bit 3")
       
 12765     }
       
 12766     field(B4, DBF_UCHAR) {
       
 12767         interest(1)
       
 12768         special(SPC_MOD)
       
 12769         pp(TRUE)
       
 12770         promptgroup("51 - Output 0-7")
       
 12771         prompt("Bit 4")
       
 12772     }
       
 12773     field(B5, DBF_UCHAR) {
       
 12774         prompt("Bit 5")
       
 12775         promptgroup("51 - Output 0-7")
       
 12776         pp(TRUE)
       
 12777         interest(1)
       
 12778         special(SPC_MOD)
       
 12779     }
       
 12780     field(B6, DBF_UCHAR) {
       
 12781         special(SPC_MOD)
       
 12782         interest(1)
       
 12783         promptgroup("51 - Output 0-7")
       
 12784         pp(TRUE)
       
 12785         prompt("Bit 6")
       
 12786     }
       
 12787     field(B7, DBF_UCHAR) {
       
 12788         prompt("Bit 7")
       
 12789         special(SPC_MOD)
       
 12790         interest(1)
       
 12791         pp(TRUE)
       
 12792         promptgroup("51 - Output 0-7")
       
 12793     }
       
 12794     field(B8, DBF_UCHAR) {
       
 12795         prompt("Bit 8")
       
 12796         pp(TRUE)
       
 12797         promptgroup("52 - Output 8-15")
       
 12798         special(SPC_MOD)
       
 12799         interest(1)
       
 12800     }
       
 12801     field(B9, DBF_UCHAR) {
       
 12802         pp(TRUE)
       
 12803         promptgroup("52 - Output 8-15")
       
 12804         special(SPC_MOD)
       
 12805         interest(1)
       
 12806         prompt("Bit 9")
       
 12807     }
       
 12808     field(BA, DBF_UCHAR) {
       
 12809         prompt("Bit 10")
       
 12810         interest(1)
       
 12811         special(SPC_MOD)
       
 12812         pp(TRUE)
       
 12813         promptgroup("52 - Output 8-15")
       
 12814     }
       
 12815     field(BB, DBF_UCHAR) {
       
 12816         pp(TRUE)
       
 12817         promptgroup("52 - Output 8-15")
       
 12818         interest(1)
       
 12819         special(SPC_MOD)
       
 12820         prompt("Bit 11")
       
 12821     }
       
 12822     field(BC, DBF_UCHAR) {
       
 12823         promptgroup("52 - Output 8-15")
       
 12824         pp(TRUE)
       
 12825         interest(1)
       
 12826         special(SPC_MOD)
       
 12827         prompt("Bit 12")
       
 12828     }
       
 12829     field(BD, DBF_UCHAR) {
       
 12830         interest(1)
       
 12831         special(SPC_MOD)
       
 12832         pp(TRUE)
       
 12833         promptgroup("52 - Output 8-15")
       
 12834         prompt("Bit 13")
       
 12835     }
       
 12836     field(BE, DBF_UCHAR) {
       
 12837         prompt("Bit 14")
       
 12838         special(SPC_MOD)
       
 12839         interest(1)
       
 12840         promptgroup("52 - Output 8-15")
       
 12841         pp(TRUE)
       
 12842     }
       
 12843     field(BF, DBF_UCHAR) {
       
 12844         special(SPC_MOD)
       
 12845         interest(1)
       
 12846         pp(TRUE)
       
 12847         promptgroup("52 - Output 8-15")
       
 12848         prompt("Bit 15")
       
 12849     }
       
 12850     field(B10, DBF_UCHAR) {
       
 12851         pp(TRUE)
       
 12852         promptgroup("53 - Output 16-23")
       
 12853         interest(1)
       
 12854         special(SPC_MOD)
       
 12855         prompt("Bit 16")
       
 12856     }
       
 12857     field(B11, DBF_UCHAR) {
       
 12858         pp(TRUE)
       
 12859         promptgroup("53 - Output 16-23")
       
 12860         special(SPC_MOD)
       
 12861         interest(1)
       
 12862         prompt("Bit 17")
       
 12863     }
       
 12864     field(B12, DBF_UCHAR) {
       
 12865         prompt("Bit 18")
       
 12866         pp(TRUE)
       
 12867         promptgroup("53 - Output 16-23")
       
 12868         special(SPC_MOD)
       
 12869         interest(1)
       
 12870     }
       
 12871     field(B13, DBF_UCHAR) {
       
 12872         pp(TRUE)
       
 12873         promptgroup("53 - Output 16-23")
       
 12874         interest(1)
       
 12875         special(SPC_MOD)
       
 12876         prompt("Bit 19")
       
 12877     }
       
 12878     field(B14, DBF_UCHAR) {
       
 12879         prompt("Bit 20")
       
 12880         interest(1)
       
 12881         special(SPC_MOD)
       
 12882         promptgroup("53 - Output 16-23")
       
 12883         pp(TRUE)
       
 12884     }
       
 12885     field(B15, DBF_UCHAR) {
       
 12886         prompt("Bit 21")
       
 12887         promptgroup("53 - Output 16-23")
       
 12888         pp(TRUE)
       
 12889         special(SPC_MOD)
       
 12890         interest(1)
       
 12891     }
       
 12892     field(B16, DBF_UCHAR) {
       
 12893         promptgroup("53 - Output 16-23")
       
 12894         pp(TRUE)
       
 12895         special(SPC_MOD)
       
 12896         interest(1)
       
 12897         prompt("Bit 22")
       
 12898     }
       
 12899     field(B17, DBF_UCHAR) {
       
 12900         prompt("Bit 23")
       
 12901         promptgroup("53 - Output 16-23")
       
 12902         pp(TRUE)
       
 12903         special(SPC_MOD)
       
 12904         interest(1)
       
 12905     }
       
 12906     field(B18, DBF_UCHAR) {
       
 12907         pp(TRUE)
       
 12908         promptgroup("54 - Output 24-31")
       
 12909         special(SPC_MOD)
       
 12910         interest(1)
       
 12911         prompt("Bit 24")
       
 12912     }
       
 12913     field(B19, DBF_UCHAR) {
       
 12914         prompt("Bit 25")
       
 12915         pp(TRUE)
       
 12916         promptgroup("54 - Output 24-31")
       
 12917         special(SPC_MOD)
       
 12918         interest(1)
       
 12919     }
       
 12920     field(B1A, DBF_UCHAR) {
       
 12921         prompt("Bit 26")
       
 12922         interest(1)
       
 12923         special(SPC_MOD)
       
 12924         promptgroup("54 - Output 24-31")
       
 12925         pp(TRUE)
       
 12926     }
       
 12927     field(B1B, DBF_UCHAR) {
       
 12928         promptgroup("54 - Output 24-31")
       
 12929         pp(TRUE)
       
 12930         interest(1)
       
 12931         special(SPC_MOD)
       
 12932         prompt("Bit 27")
       
 12933     }
       
 12934     field(B1C, DBF_UCHAR) {
       
 12935         prompt("Bit 28")
       
 12936         pp(TRUE)
       
 12937         promptgroup("54 - Output 24-31")
       
 12938         special(SPC_MOD)
       
 12939         interest(1)
       
 12940     }
       
 12941     field(B1D, DBF_UCHAR) {
       
 12942         prompt("Bit 29")
       
 12943         pp(TRUE)
       
 12944         promptgroup("54 - Output 24-31")
       
 12945         interest(1)
       
 12946         special(SPC_MOD)
       
 12947     }
       
 12948     field(B1E, DBF_UCHAR) {
       
 12949         special(SPC_MOD)
       
 12950         interest(1)
       
 12951         promptgroup("54 - Output 24-31")
       
 12952         pp(TRUE)
       
 12953         prompt("Bit 30")
       
 12954     }
       
 12955     field(B1F, DBF_UCHAR) {
       
 12956         prompt("Bit 31")
       
 12957         special(SPC_MOD)
       
 12958         interest(1)
       
 12959         promptgroup("54 - Output 24-31")
       
 12960         pp(TRUE)
       
 12961     }
       
 12962 }
       
 12963 device(mbboDirect, CONSTANT, devMbboDirectSoft, "Soft Channel")
       
 12964 device(mbboDirect, CONSTANT, devMbboDirectSoftRaw, "Raw Soft Channel")
       
 12965 device(mbboDirect, CONSTANT, devMbboDirectSoftCallback, "Async Soft Channel")
       
 12966 device(mbboDirect, INST_IO, asynMbboDirectUInt32Digital, "asynUInt32Digital")
       
 12967 device(mbboDirect, INST_IO, devmbboDirectStream, "stream")
       
 12968 recordtype(aai) {
       
 12969     %#include "epicsTypes.h"
       
 12970     %#include "link.h"
       
 12971     %#include "epicsMutex.h"
       
 12972     %#include "ellLib.h"
       
 12973     %#include "epicsTime.h"
       
 12974     %#include "callback.h"
       
 12975     field(NAME, DBF_STRING) {
       
 12976         special(SPC_NOMOD)
       
 12977         prompt("Record Name")
       
 12978         size(61)
       
 12979     }
       
 12980     field(DESC, DBF_STRING) {
       
 12981         prompt("Descriptor")
       
 12982         size(41)
       
 12983         promptgroup("10 - Common")
       
 12984     }
       
 12985     field(ASG, DBF_STRING) {
       
 12986         special(SPC_AS)
       
 12987         promptgroup("10 - Common")
       
 12988         size(29)
       
 12989         prompt("Access Security Group")
       
 12990     }
       
 12991     field(SCAN, DBF_MENU) {
       
 12992         prompt("Scan Mechanism")
       
 12993         promptgroup("20 - Scan")
       
 12994         special(SPC_SCAN)
       
 12995         menu(menuScan)
       
 12996         interest(1)
       
 12997     }
       
 12998     field(PINI, DBF_MENU) {
       
 12999         interest(1)
       
 13000         menu(menuPini)
       
 13001         promptgroup("20 - Scan")
       
 13002         prompt("Process at iocInit")
       
 13003     }
       
 13004     field(PHAS, DBF_SHORT) {
       
 13005         promptgroup("20 - Scan")
       
 13006         interest(1)
       
 13007         special(SPC_SCAN)
       
 13008         prompt("Scan Phase")
       
 13009     }
       
 13010     field(EVNT, DBF_STRING) {
       
 13011         interest(1)
       
 13012         special(SPC_SCAN)
       
 13013         promptgroup("20 - Scan")
       
 13014         size(40)
       
 13015         prompt("Event Name")
       
 13016     }
       
 13017     field(TSE, DBF_SHORT) {
       
 13018         prompt("Time Stamp Event")
       
 13019         promptgroup("20 - Scan")
       
 13020         interest(1)
       
 13021     }
       
 13022     field(TSEL, DBF_INLINK) {
       
 13023         prompt("Time Stamp Link")
       
 13024         promptgroup("20 - Scan")
       
 13025         interest(1)
       
 13026     }
       
 13027     field(DTYP, DBF_DEVICE) {
       
 13028         interest(1)
       
 13029         promptgroup("10 - Common")
       
 13030         prompt("Device Type")
       
 13031     }
       
 13032     field(DISV, DBF_SHORT) {
       
 13033         initial("1")
       
 13034         prompt("Disable Value")
       
 13035         promptgroup("20 - Scan")
       
 13036     }
       
 13037     field(DISA, DBF_SHORT) {
       
 13038         prompt("Disable")
       
 13039     }
       
 13040     field(SDIS, DBF_INLINK) {
       
 13041         prompt("Scanning Disable")
       
 13042         promptgroup("20 - Scan")
       
 13043         interest(1)
       
 13044     }
       
 13045     field(MLOK, DBF_NOACCESS) {
       
 13046         prompt("Monitor lock")
       
 13047         extra("epicsMutexId        mlok")
       
 13048         special(SPC_NOMOD)
       
 13049         interest(4)
       
 13050     }
       
 13051     field(MLIS, DBF_NOACCESS) {
       
 13052         extra("ELLLIST             mlis")
       
 13053         prompt("Monitor List")
       
 13054         special(SPC_NOMOD)
       
 13055         interest(4)
       
 13056     }
       
 13057     field(BKLNK, DBF_NOACCESS) {
       
 13058         interest(4)
       
 13059         special(SPC_NOMOD)
       
 13060         extra("ELLLIST             bklnk")
       
 13061         prompt("Backwards link tracking")
       
 13062     }
       
 13063     field(DISP, DBF_UCHAR) {
       
 13064         prompt("Disable putField")
       
 13065     }
       
 13066     field(PROC, DBF_UCHAR) {
       
 13067         pp(TRUE)
       
 13068         interest(3)
       
 13069         prompt("Force Processing")
       
 13070     }
       
 13071     field(STAT, DBF_MENU) {
       
 13072         prompt("Alarm Status")
       
 13073         initial("UDF")
       
 13074         special(SPC_NOMOD)
       
 13075         menu(menuAlarmStat)
       
 13076     }
       
 13077     field(SEVR, DBF_MENU) {
       
 13078         prompt("Alarm Severity")
       
 13079         menu(menuAlarmSevr)
       
 13080         special(SPC_NOMOD)
       
 13081     }
       
 13082     field(NSTA, DBF_MENU) {
       
 13083         interest(2)
       
 13084         menu(menuAlarmStat)
       
 13085         special(SPC_NOMOD)
       
 13086         prompt("New Alarm Status")
       
 13087     }
       
 13088     field(NSEV, DBF_MENU) {
       
 13089         prompt("New Alarm Severity")
       
 13090         special(SPC_NOMOD)
       
 13091         interest(2)
       
 13092         menu(menuAlarmSevr)
       
 13093     }
       
 13094     field(ACKS, DBF_MENU) {
       
 13095         prompt("Alarm Ack Severity")
       
 13096         special(SPC_NOMOD)
       
 13097         interest(2)
       
 13098         menu(menuAlarmSevr)
       
 13099     }
       
 13100     field(ACKT, DBF_MENU) {
       
 13101         initial("YES")
       
 13102         prompt("Alarm Ack Transient")
       
 13103         special(SPC_NOMOD)
       
 13104         interest(2)
       
 13105         menu(menuYesNo)
       
 13106         promptgroup("70 - Alarm")
       
 13107     }
       
 13108     field(DISS, DBF_MENU) {
       
 13109         prompt("Disable Alarm Sevrty")
       
 13110         promptgroup("70 - Alarm")
       
 13111         interest(1)
       
 13112         menu(menuAlarmSevr)
       
 13113     }
       
 13114     field(LCNT, DBF_UCHAR) {
       
 13115         special(SPC_NOMOD)
       
 13116         interest(2)
       
 13117         prompt("Lock Count")
       
 13118     }
       
 13119     field(PACT, DBF_UCHAR) {
       
 13120         prompt("Record active")
       
 13121         interest(1)
       
 13122         special(SPC_NOMOD)
       
 13123     }
       
 13124     field(PUTF, DBF_UCHAR) {
       
 13125         prompt("dbPutField process")
       
 13126         special(SPC_NOMOD)
       
 13127         interest(1)
       
 13128     }
       
 13129     field(RPRO, DBF_UCHAR) {
       
 13130         prompt("Reprocess ")
       
 13131         special(SPC_NOMOD)
       
 13132         interest(1)
       
 13133     }
       
 13134     field(ASP, DBF_NOACCESS) {
       
 13135         special(SPC_NOMOD)
       
 13136         interest(4)
       
 13137         prompt("Access Security Pvt")
       
 13138         extra("struct asgMember    *asp")
       
 13139     }
       
 13140     field(PPN, DBF_NOACCESS) {
       
 13141         interest(4)
       
 13142         special(SPC_NOMOD)
       
 13143         prompt("pprocessNotify")
       
 13144         extra("struct processNotify *ppn")
       
 13145     }
       
 13146     field(PPNR, DBF_NOACCESS) {
       
 13147         extra("struct processNotifyRecord *ppnr")
       
 13148         prompt("pprocessNotifyRecord")
       
 13149         special(SPC_NOMOD)
       
 13150         interest(4)
       
 13151     }
       
 13152     field(SPVT, DBF_NOACCESS) {
       
 13153         prompt("Scan Private")
       
 13154         extra("struct scan_element *spvt")
       
 13155         interest(4)
       
 13156         special(SPC_NOMOD)
       
 13157     }
       
 13158     field(RSET, DBF_NOACCESS) {
       
 13159         special(SPC_NOMOD)
       
 13160         interest(4)
       
 13161         extra("struct typed_rset   *rset")
       
 13162         prompt("Address of RSET")
       
 13163     }
       
 13164     field(DSET, DBF_NOACCESS) {
       
 13165         interest(4)
       
 13166         special(SPC_NOMOD)
       
 13167         extra("struct dset         *dset")
       
 13168         prompt("DSET address")
       
 13169     }
       
 13170     field(DPVT, DBF_NOACCESS) {
       
 13171         special(SPC_NOMOD)
       
 13172         interest(4)
       
 13173         extra("void                *dpvt")
       
 13174         prompt("Device Private")
       
 13175     }
       
 13176     field(RDES, DBF_NOACCESS) {
       
 13177         special(SPC_NOMOD)
       
 13178         interest(4)
       
 13179         prompt("Address of dbRecordType")
       
 13180         extra("struct dbRecordType *rdes")
       
 13181     }
       
 13182     field(LSET, DBF_NOACCESS) {
       
 13183         extra("struct lockRecord   *lset")
       
 13184         prompt("Lock Set")
       
 13185         interest(4)
       
 13186         special(SPC_NOMOD)
       
 13187     }
       
 13188     field(PRIO, DBF_MENU) {
       
 13189         prompt("Scheduling Priority")
       
 13190         promptgroup("20 - Scan")
       
 13191         special(SPC_SCAN)
       
 13192         interest(1)
       
 13193         menu(menuPriority)
       
 13194     }
       
 13195     field(TPRO, DBF_UCHAR) {
       
 13196         prompt("Trace Processing")
       
 13197     }
       
 13198     field(BKPT, DBF_NOACCESS) {
       
 13199         special(SPC_NOMOD)
       
 13200         interest(1)
       
 13201         prompt("Break Point")
       
 13202         extra("char                bkpt")
       
 13203     }
       
 13204     field(UDF, DBF_UCHAR) {
       
 13205         interest(1)
       
 13206         promptgroup("10 - Common")
       
 13207         pp(TRUE)
       
 13208         initial("1")
       
 13209         prompt("Undefined")
       
 13210     }
       
 13211     field(UDFS, DBF_MENU) {
       
 13212         menu(menuAlarmSevr)
       
 13213         interest(1)
       
 13214         promptgroup("70 - Alarm")
       
 13215         initial("INVALID")
       
 13216         prompt("Undefined Alarm Sevrty")
       
 13217     }
       
 13218     field(TIME, DBF_NOACCESS) {
       
 13219         interest(2)
       
 13220         special(SPC_NOMOD)
       
 13221         prompt("Time")
       
 13222         extra("epicsTimeStamp      time")
       
 13223     }
       
 13224     field(FLNK, DBF_FWDLINK) {
       
 13225         promptgroup("20 - Scan")
       
 13226         interest(1)
       
 13227         prompt("Forward Process Link")
       
 13228     }
       
 13229     field(VAL, DBF_NOACCESS) {
       
 13230         special(SPC_DBADDR)
       
 13231         pp(TRUE)
       
 13232         extra("void *		val")
       
 13233         asl(ASL0)
       
 13234         prompt("Value")
       
 13235     }
       
 13236     field(PREC, DBF_SHORT) {
       
 13237         prompt("Display Precision")
       
 13238         promptgroup("80 - Display")
       
 13239         interest(1)
       
 13240         prop(YES)
       
 13241     }
       
 13242     field(INP, DBF_INLINK) {
       
 13243         promptgroup("40 - Input")
       
 13244         interest(1)
       
 13245         prompt("Input Specification")
       
 13246     }
       
 13247     field(EGU, DBF_STRING) {
       
 13248         promptgroup("80 - Display")
       
 13249         interest(1)
       
 13250         prop(YES)
       
 13251         prompt("Engineering Units")
       
 13252         size(16)
       
 13253     }
       
 13254     field(HOPR, DBF_DOUBLE) {
       
 13255         prompt("High Operating Range")
       
 13256         promptgroup("80 - Display")
       
 13257         prop(YES)
       
 13258         interest(1)
       
 13259     }
       
 13260     field(LOPR, DBF_DOUBLE) {
       
 13261         prompt("Low Operating Range")
       
 13262         promptgroup("80 - Display")
       
 13263         interest(1)
       
 13264         prop(YES)
       
 13265     }
       
 13266     field(NELM, DBF_ULONG) {
       
 13267         interest(1)
       
 13268         special(SPC_NOMOD)
       
 13269         promptgroup("30 - Action")
       
 13270         initial("1")
       
 13271         prompt("Number of Elements")
       
 13272     }
       
 13273     field(FTVL, DBF_MENU) {
       
 13274         promptgroup("30 - Action")
       
 13275         special(SPC_NOMOD)
       
 13276         interest(1)
       
 13277         menu(menuFtype)
       
 13278         prompt("Field Type of Value")
       
 13279     }
       
 13280     field(NORD, DBF_ULONG) {
       
 13281         prompt("Number elements read")
       
 13282         special(SPC_NOMOD)
       
 13283     }
       
 13284     field(BPTR, DBF_NOACCESS) {
       
 13285         interest(4)
       
 13286         special(SPC_NOMOD)
       
 13287         prompt("Buffer Pointer")
       
 13288         extra("void *		bptr")
       
 13289     }
       
 13290     field(SIML, DBF_INLINK) {
       
 13291         prompt("Simulation Mode Link")
       
 13292         promptgroup("90 - Simulate")
       
 13293         interest(1)
       
 13294     }
       
 13295     field(SIMM, DBF_MENU) {
       
 13296         menu(menuYesNo)
       
 13297         interest(1)
       
 13298         special(SPC_MOD)
       
 13299         prompt("Simulation Mode")
       
 13300     }
       
 13301     field(SIMS, DBF_MENU) {
       
 13302         interest(2)
       
 13303         menu(menuAlarmSevr)
       
 13304         promptgroup("90 - Simulate")
       
 13305         prompt("Simulation Mode Severity")
       
 13306     }
       
 13307     field(SIOL, DBF_INLINK) {
       
 13308         prompt("Simulation Input Link")
       
 13309         interest(1)
       
 13310         promptgroup("90 - Simulate")
       
 13311     }
       
 13312     field(OLDSIMM, DBF_MENU) {
       
 13313         special(SPC_NOMOD)
       
 13314         interest(4)
       
 13315         menu(menuSimm)
       
 13316         prompt("Prev. Simulation Mode")
       
 13317     }
       
 13318     field(SSCN, DBF_MENU) {
       
 13319         menu(menuScan)
       
 13320         interest(1)
       
 13321         promptgroup("90 - Simulate")
       
 13322         initial("65535")
       
 13323         prompt("Sim. Mode Scan")
       
 13324     }
       
 13325     field(SDLY, DBF_DOUBLE) {
       
 13326         interest(2)
       
 13327         promptgroup("90 - Simulate")
       
 13328         initial("-1.0")
       
 13329         prompt("Sim. Mode Async Delay")
       
 13330     }
       
 13331     field(SIMPVT, DBF_NOACCESS) {
       
 13332         interest(4)
       
 13333         special(SPC_NOMOD)
       
 13334         prompt("Sim. Mode Private")
       
 13335         extra("CALLBACK            *simpvt")
       
 13336     }
       
 13337     field(MPST, DBF_MENU) {
       
 13338         menu(aaiPOST)
       
 13339         interest(1)
       
 13340         promptgroup("80 - Display")
       
 13341         prompt("Post Value Monitors")
       
 13342     }
       
 13343     field(APST, DBF_MENU) {
       
 13344         menu(aaiPOST)
       
 13345         interest(1)
       
 13346         promptgroup("80 - Display")
       
 13347         prompt("Post Archive Monitors")
       
 13348     }
       
 13349     field(HASH, DBF_ULONG) {
       
 13350         prompt("Hash of OnChange data.")
       
 13351         interest(3)
       
 13352     }
       
 13353 }
       
 13354 device(aai, CONSTANT, devAaiSoft, "Soft Channel")
       
 13355 device(aai, INST_IO, devaaiStream, "stream")
       
 13356 recordtype(seq) {
       
 13357     %#include "epicsTypes.h"
       
 13358     %#include "link.h"
       
 13359     %#include "epicsMutex.h"
       
 13360     %#include "ellLib.h"
       
 13361     %#include "epicsTime.h"
       
 13362     field(NAME, DBF_STRING) {
       
 13363         special(SPC_NOMOD)
       
 13364         prompt("Record Name")
       
 13365         size(61)
       
 13366     }
       
 13367     field(DESC, DBF_STRING) {
       
 13368         promptgroup("10 - Common")
       
 13369         size(41)
       
 13370         prompt("Descriptor")
       
 13371     }
       
 13372     field(ASG, DBF_STRING) {
       
 13373         promptgroup("10 - Common")
       
 13374         special(SPC_AS)
       
 13375         prompt("Access Security Group")
       
 13376         size(29)
       
 13377     }
       
 13378     field(SCAN, DBF_MENU) {
       
 13379         promptgroup("20 - Scan")
       
 13380         menu(menuScan)
       
 13381         interest(1)
       
 13382         special(SPC_SCAN)
       
 13383         prompt("Scan Mechanism")
       
 13384     }
       
 13385     field(PINI, DBF_MENU) {
       
 13386         prompt("Process at iocInit")
       
 13387         promptgroup("20 - Scan")
       
 13388         interest(1)
       
 13389         menu(menuPini)
       
 13390     }
       
 13391     field(PHAS, DBF_SHORT) {
       
 13392         promptgroup("20 - Scan")
       
 13393         interest(1)
       
 13394         special(SPC_SCAN)
       
 13395         prompt("Scan Phase")
       
 13396     }
       
 13397     field(EVNT, DBF_STRING) {
       
 13398         size(40)
       
 13399         prompt("Event Name")
       
 13400         interest(1)
       
 13401         special(SPC_SCAN)
       
 13402         promptgroup("20 - Scan")
       
 13403     }
       
 13404     field(TSE, DBF_SHORT) {
       
 13405         prompt("Time Stamp Event")
       
 13406         interest(1)
       
 13407         promptgroup("20 - Scan")
       
 13408     }
       
 13409     field(TSEL, DBF_INLINK) {
       
 13410         interest(1)
       
 13411         promptgroup("20 - Scan")
       
 13412         prompt("Time Stamp Link")
       
 13413     }
       
 13414     field(DTYP, DBF_DEVICE) {
       
 13415         interest(1)
       
 13416         promptgroup("10 - Common")
       
 13417         prompt("Device Type")
       
 13418     }
       
 13419     field(DISV, DBF_SHORT) {
       
 13420         initial("1")
       
 13421         prompt("Disable Value")
       
 13422         promptgroup("20 - Scan")
       
 13423     }
       
 13424     field(DISA, DBF_SHORT) {
       
 13425         prompt("Disable")
       
 13426     }
       
 13427     field(SDIS, DBF_INLINK) {
       
 13428         interest(1)
       
 13429         promptgroup("20 - Scan")
       
 13430         prompt("Scanning Disable")
       
 13431     }
       
 13432     field(MLOK, DBF_NOACCESS) {
       
 13433         prompt("Monitor lock")
       
 13434         extra("epicsMutexId        mlok")
       
 13435         special(SPC_NOMOD)
       
 13436         interest(4)
       
 13437     }
       
 13438     field(MLIS, DBF_NOACCESS) {
       
 13439         prompt("Monitor List")
       
 13440         extra("ELLLIST             mlis")
       
 13441         special(SPC_NOMOD)
       
 13442         interest(4)
       
 13443     }
       
 13444     field(BKLNK, DBF_NOACCESS) {
       
 13445         special(SPC_NOMOD)
       
 13446         interest(4)
       
 13447         extra("ELLLIST             bklnk")
       
 13448         prompt("Backwards link tracking")
       
 13449     }
       
 13450     field(DISP, DBF_UCHAR) {
       
 13451         prompt("Disable putField")
       
 13452     }
       
 13453     field(PROC, DBF_UCHAR) {
       
 13454         prompt("Force Processing")
       
 13455         interest(3)
       
 13456         pp(TRUE)
       
 13457     }
       
 13458     field(STAT, DBF_MENU) {
       
 13459         special(SPC_NOMOD)
       
 13460         menu(menuAlarmStat)
       
 13461         prompt("Alarm Status")
       
 13462         initial("UDF")
       
 13463     }
       
 13464     field(SEVR, DBF_MENU) {
       
 13465         prompt("Alarm Severity")
       
 13466         menu(menuAlarmSevr)
       
 13467         special(SPC_NOMOD)
       
 13468     }
       
 13469     field(NSTA, DBF_MENU) {
       
 13470         menu(menuAlarmStat)
       
 13471         interest(2)
       
 13472         special(SPC_NOMOD)
       
 13473         prompt("New Alarm Status")
       
 13474     }
       
 13475     field(NSEV, DBF_MENU) {
       
 13476         prompt("New Alarm Severity")
       
 13477         special(SPC_NOMOD)
       
 13478         menu(menuAlarmSevr)
       
 13479         interest(2)
       
 13480     }
       
 13481     field(ACKS, DBF_MENU) {
       
 13482         prompt("Alarm Ack Severity")
       
 13483         special(SPC_NOMOD)
       
 13484         interest(2)
       
 13485         menu(menuAlarmSevr)
       
 13486     }
       
 13487     field(ACKT, DBF_MENU) {
       
 13488         interest(2)
       
 13489         menu(menuYesNo)
       
 13490         special(SPC_NOMOD)
       
 13491         promptgroup("70 - Alarm")
       
 13492         initial("YES")
       
 13493         prompt("Alarm Ack Transient")
       
 13494     }
       
 13495     field(DISS, DBF_MENU) {
       
 13496         prompt("Disable Alarm Sevrty")
       
 13497         promptgroup("70 - Alarm")
       
 13498         menu(menuAlarmSevr)
       
 13499         interest(1)
       
 13500     }
       
 13501     field(LCNT, DBF_UCHAR) {
       
 13502         prompt("Lock Count")
       
 13503         interest(2)
       
 13504         special(SPC_NOMOD)
       
 13505     }
       
 13506     field(PACT, DBF_UCHAR) {
       
 13507         interest(1)
       
 13508         special(SPC_NOMOD)
       
 13509         prompt("Record active")
       
 13510     }
       
 13511     field(PUTF, DBF_UCHAR) {
       
 13512         special(SPC_NOMOD)
       
 13513         interest(1)
       
 13514         prompt("dbPutField process")
       
 13515     }
       
 13516     field(RPRO, DBF_UCHAR) {
       
 13517         interest(1)
       
 13518         special(SPC_NOMOD)
       
 13519         prompt("Reprocess ")
       
 13520     }
       
 13521     field(ASP, DBF_NOACCESS) {
       
 13522         prompt("Access Security Pvt")
       
 13523         extra("struct asgMember    *asp")
       
 13524         interest(4)
       
 13525         special(SPC_NOMOD)
       
 13526     }
       
 13527     field(PPN, DBF_NOACCESS) {
       
 13528         interest(4)
       
 13529         special(SPC_NOMOD)
       
 13530         prompt("pprocessNotify")
       
 13531         extra("struct processNotify *ppn")
       
 13532     }
       
 13533     field(PPNR, DBF_NOACCESS) {
       
 13534         prompt("pprocessNotifyRecord")
       
 13535         extra("struct processNotifyRecord *ppnr")
       
 13536         special(SPC_NOMOD)
       
 13537         interest(4)
       
 13538     }
       
 13539     field(SPVT, DBF_NOACCESS) {
       
 13540         extra("struct scan_element *spvt")
       
 13541         prompt("Scan Private")
       
 13542         special(SPC_NOMOD)
       
 13543         interest(4)
       
 13544     }
       
 13545     field(RSET, DBF_NOACCESS) {
       
 13546         extra("struct typed_rset   *rset")
       
 13547         prompt("Address of RSET")
       
 13548         interest(4)
       
 13549         special(SPC_NOMOD)
       
 13550     }
       
 13551     field(DSET, DBF_NOACCESS) {
       
 13552         interest(4)
       
 13553         special(SPC_NOMOD)
       
 13554         prompt("DSET address")
       
 13555         extra("struct dset         *dset")
       
 13556     }
       
 13557     field(DPVT, DBF_NOACCESS) {
       
 13558         extra("void                *dpvt")
       
 13559         prompt("Device Private")
       
 13560         special(SPC_NOMOD)
       
 13561         interest(4)
       
 13562     }
       
 13563     field(RDES, DBF_NOACCESS) {
       
 13564         extra("struct dbRecordType *rdes")
       
 13565         prompt("Address of dbRecordType")
       
 13566         interest(4)
       
 13567         special(SPC_NOMOD)
       
 13568     }
       
 13569     field(LSET, DBF_NOACCESS) {
       
 13570         prompt("Lock Set")
       
 13571         extra("struct lockRecord   *lset")
       
 13572         special(SPC_NOMOD)
       
 13573         interest(4)
       
 13574     }
       
 13575     field(PRIO, DBF_MENU) {
       
 13576         special(SPC_SCAN)
       
 13577         menu(menuPriority)
       
 13578         interest(1)
       
 13579         promptgroup("20 - Scan")
       
 13580         prompt("Scheduling Priority")
       
 13581     }
       
 13582     field(TPRO, DBF_UCHAR) {
       
 13583         prompt("Trace Processing")
       
 13584     }
       
 13585     field(BKPT, DBF_NOACCESS) {
       
 13586         special(SPC_NOMOD)
       
 13587         interest(1)
       
 13588         prompt("Break Point")
       
 13589         extra("char                bkpt")
       
 13590     }
       
 13591     field(UDF, DBF_UCHAR) {
       
 13592         prompt("Undefined")
       
 13593         initial("1")
       
 13594         pp(TRUE)
       
 13595         promptgroup("10 - Common")
       
 13596         interest(1)
       
 13597     }
       
 13598     field(UDFS, DBF_MENU) {
       
 13599         initial("INVALID")
       
 13600         prompt("Undefined Alarm Sevrty")
       
 13601         interest(1)
       
 13602         menu(menuAlarmSevr)
       
 13603         promptgroup("70 - Alarm")
       
 13604     }
       
 13605     field(TIME, DBF_NOACCESS) {
       
 13606         interest(2)
       
 13607         special(SPC_NOMOD)
       
 13608         extra("epicsTimeStamp      time")
       
 13609         prompt("Time")
       
 13610     }
       
 13611     field(FLNK, DBF_FWDLINK) {
       
 13612         promptgroup("20 - Scan")
       
 13613         interest(1)
       
 13614         prompt("Forward Process Link")
       
 13615     }
       
 13616     field(VAL, DBF_LONG) {
       
 13617         pp(TRUE)
       
 13618         prompt("Used to trigger")
       
 13619         asl(ASL0)
       
 13620     }
       
 13621     field(SELM, DBF_MENU) {
       
 13622         promptgroup("30 - Action")
       
 13623         interest(1)
       
 13624         menu(seqSELM)
       
 13625         prompt("Select Mechanism")
       
 13626     }
       
 13627     field(SELN, DBF_USHORT) {
       
 13628         interest(1)
       
 13629         prompt("Link Selection")
       
 13630         initial("1")
       
 13631     }
       
 13632     field(SELL, DBF_INLINK) {
       
 13633         promptgroup("30 - Action")
       
 13634         interest(1)
       
 13635         prompt("Link Selection Loc")
       
 13636     }
       
 13637     field(OFFS, DBF_SHORT) {
       
 13638         promptgroup("30 - Action")
       
 13639         interest(1)
       
 13640         prompt("Offset for Specified")
       
 13641         initial("0")
       
 13642     }
       
 13643     field(SHFT, DBF_SHORT) {
       
 13644         promptgroup("30 - Action")
       
 13645         interest(1)
       
 13646         prompt("Shift for Mask mode")
       
 13647         initial("-1")
       
 13648     }
       
 13649     field(OLDN, DBF_USHORT) {
       
 13650         prompt("Old Selection")
       
 13651         interest(4)
       
 13652     }
       
 13653     field(PREC, DBF_SHORT) {
       
 13654         interest(1)
       
 13655         promptgroup("80 - Display")
       
 13656         prompt("Display Precision")
       
 13657     }
       
 13658     field(DLY0, DBF_DOUBLE) {
       
 13659         prompt("Delay 0")
       
 13660         promptgroup("41 - Link 0-7")
       
 13661         interest(1)
       
 13662     }
       
 13663     field(DOL0, DBF_INLINK) {
       
 13664         prompt("Input link 0")
       
 13665         interest(1)
       
 13666         promptgroup("41 - Link 0-7")
       
 13667     }
       
 13668     field(DO0, DBF_DOUBLE) {
       
 13669         prompt("Value 0")
       
 13670         interest(1)
       
 13671     }
       
 13672     field(LNK0, DBF_OUTLINK) {
       
 13673         promptgroup("41 - Link 0-7")
       
 13674         interest(1)
       
 13675         prompt("Output Link 0")
       
 13676     }
       
 13677     field(DLY1, DBF_DOUBLE) {
       
 13678         promptgroup("41 - Link 0-7")
       
 13679         interest(1)
       
 13680         prompt("Delay 1")
       
 13681     }
       
 13682     field(DOL1, DBF_INLINK) {
       
 13683         promptgroup("41 - Link 0-7")
       
 13684         interest(1)
       
 13685         prompt("Input link1")
       
 13686     }
       
 13687     field(DO1, DBF_DOUBLE) {
       
 13688         prompt("Value 1")
       
 13689         interest(1)
       
 13690     }
       
 13691     field(LNK1, DBF_OUTLINK) {
       
 13692         interest(1)
       
 13693         promptgroup("41 - Link 0-7")
       
 13694         prompt("Output Link 1")
       
 13695     }
       
 13696     field(DLY2, DBF_DOUBLE) {
       
 13697         prompt("Delay 2")
       
 13698         promptgroup("41 - Link 0-7")
       
 13699         interest(1)
       
 13700     }
       
 13701     field(DOL2, DBF_INLINK) {
       
 13702         promptgroup("41 - Link 0-7")
       
 13703         interest(1)
       
 13704         prompt("Input link 2")
       
 13705     }
       
 13706     field(DO2, DBF_DOUBLE) {
       
 13707         interest(1)
       
 13708         prompt("Value 2")
       
 13709     }
       
 13710     field(LNK2, DBF_OUTLINK) {
       
 13711         promptgroup("41 - Link 0-7")
       
 13712         interest(1)
       
 13713         prompt("Output Link 2")
       
 13714     }
       
 13715     field(DLY3, DBF_DOUBLE) {
       
 13716         prompt("Delay 3")
       
 13717         promptgroup("41 - Link 0-7")
       
 13718         interest(1)
       
 13719     }
       
 13720     field(DOL3, DBF_INLINK) {
       
 13721         prompt("Input link 3")
       
 13722         promptgroup("41 - Link 0-7")
       
 13723         interest(1)
       
 13724     }
       
 13725     field(DO3, DBF_DOUBLE) {
       
 13726         interest(1)
       
 13727         prompt("Value 3")
       
 13728     }
       
 13729     field(LNK3, DBF_OUTLINK) {
       
 13730         interest(1)
       
 13731         promptgroup("41 - Link 0-7")
       
 13732         prompt("Output Link 3")
       
 13733     }
       
 13734     field(DLY4, DBF_DOUBLE) {
       
 13735         prompt("Delay 4")
       
 13736         interest(1)
       
 13737         promptgroup("41 - Link 0-7")
       
 13738     }
       
 13739     field(DOL4, DBF_INLINK) {
       
 13740         promptgroup("41 - Link 0-7")
       
 13741         interest(1)
       
 13742         prompt("Input link 4")
       
 13743     }
       
 13744     field(DO4, DBF_DOUBLE) {
       
 13745         prompt("Value 4")
       
 13746         interest(1)
       
 13747     }
       
 13748     field(LNK4, DBF_OUTLINK) {
       
 13749         promptgroup("41 - Link 0-7")
       
 13750         interest(1)
       
 13751         prompt("Output Link 4")
       
 13752     }
       
 13753     field(DLY5, DBF_DOUBLE) {
       
 13754         prompt("Delay 5")
       
 13755         promptgroup("41 - Link 0-7")
       
 13756         interest(1)
       
 13757     }
       
 13758     field(DOL5, DBF_INLINK) {
       
 13759         promptgroup("41 - Link 0-7")
       
 13760         interest(1)
       
 13761         prompt("Input link 5")
       
 13762     }
       
 13763     field(DO5, DBF_DOUBLE) {
       
 13764         interest(1)
       
 13765         prompt("Value 5")
       
 13766     }
       
 13767     field(LNK5, DBF_OUTLINK) {
       
 13768         interest(1)
       
 13769         promptgroup("41 - Link 0-7")
       
 13770         prompt("Output Link 5")
       
 13771     }
       
 13772     field(DLY6, DBF_DOUBLE) {
       
 13773         interest(1)
       
 13774         promptgroup("41 - Link 0-7")
       
 13775         prompt("Delay 6")
       
 13776     }
       
 13777     field(DOL6, DBF_INLINK) {
       
 13778         interest(1)
       
 13779         promptgroup("41 - Link 0-7")
       
 13780         prompt("Input link 6")
       
 13781     }
       
 13782     field(DO6, DBF_DOUBLE) {
       
 13783         prompt("Value 6")
       
 13784         interest(1)
       
 13785     }
       
 13786     field(LNK6, DBF_OUTLINK) {
       
 13787         promptgroup("41 - Link 0-7")
       
 13788         interest(1)
       
 13789         prompt("Output Link 6")
       
 13790     }
       
 13791     field(DLY7, DBF_DOUBLE) {
       
 13792         interest(1)
       
 13793         promptgroup("41 - Link 0-7")
       
 13794         prompt("Delay 7")
       
 13795     }
       
 13796     field(DOL7, DBF_INLINK) {
       
 13797         prompt("Input link 7")
       
 13798         interest(1)
       
 13799         promptgroup("41 - Link 0-7")
       
 13800     }
       
 13801     field(DO7, DBF_DOUBLE) {
       
 13802         prompt("Value 7")
       
 13803         interest(1)
       
 13804     }
       
 13805     field(LNK7, DBF_OUTLINK) {
       
 13806         promptgroup("41 - Link 0-7")
       
 13807         interest(1)
       
 13808         prompt("Output Link 7")
       
 13809     }
       
 13810     field(DLY8, DBF_DOUBLE) {
       
 13811         interest(1)
       
 13812         promptgroup("42 - Link 8-F")
       
 13813         prompt("Delay 8")
       
 13814     }
       
 13815     field(DOL8, DBF_INLINK) {
       
 13816         prompt("Input link 8")
       
 13817         interest(1)
       
 13818         promptgroup("42 - Link 8-F")
       
 13819     }
       
 13820     field(DO8, DBF_DOUBLE) {
       
 13821         prompt("Value 8")
       
 13822         interest(1)
       
 13823     }
       
 13824     field(LNK8, DBF_OUTLINK) {
       
 13825         promptgroup("42 - Link 8-F")
       
 13826         interest(1)
       
 13827         prompt("Output Link 8")
       
 13828     }
       
 13829     field(DLY9, DBF_DOUBLE) {
       
 13830         promptgroup("42 - Link 8-F")
       
 13831         interest(1)
       
 13832         prompt("Delay 9")
       
 13833     }
       
 13834     field(DOL9, DBF_INLINK) {
       
 13835         prompt("Input link 9")
       
 13836         promptgroup("42 - Link 8-F")
       
 13837         interest(1)
       
 13838     }
       
 13839     field(DO9, DBF_DOUBLE) {
       
 13840         interest(1)
       
 13841         prompt("Value 9")
       
 13842     }
       
 13843     field(LNK9, DBF_OUTLINK) {
       
 13844         prompt("Output Link 9")
       
 13845         interest(1)
       
 13846         promptgroup("42 - Link 8-F")
       
 13847     }
       
 13848     field(DLYA, DBF_DOUBLE) {
       
 13849         promptgroup("42 - Link 8-F")
       
 13850         interest(1)
       
 13851         prompt("Delay 10")
       
 13852     }
       
 13853     field(DOLA, DBF_INLINK) {
       
 13854         prompt("Input link 10")
       
 13855         promptgroup("42 - Link 8-F")
       
 13856         interest(1)
       
 13857     }
       
 13858     field(DOA, DBF_DOUBLE) {
       
 13859         interest(1)
       
 13860         prompt("Value 10")
       
 13861     }
       
 13862     field(LNKA, DBF_OUTLINK) {
       
 13863         interest(1)
       
 13864         promptgroup("42 - Link 8-F")
       
 13865         prompt("Output Link 10")
       
 13866     }
       
 13867     field(DLYB, DBF_DOUBLE) {
       
 13868         promptgroup("42 - Link 8-F")
       
 13869         interest(1)
       
 13870         prompt("Delay 11")
       
 13871     }
       
 13872     field(DOLB, DBF_INLINK) {
       
 13873         prompt("Input link 11")
       
 13874         promptgroup("42 - Link 8-F")
       
 13875         interest(1)
       
 13876     }
       
 13877     field(DOB, DBF_DOUBLE) {
       
 13878         interest(1)
       
 13879         prompt("Value 11")
       
 13880     }
       
 13881     field(LNKB, DBF_OUTLINK) {
       
 13882         prompt("Output Link 11")
       
 13883         promptgroup("42 - Link 8-F")
       
 13884         interest(1)
       
 13885     }
       
 13886     field(DLYC, DBF_DOUBLE) {
       
 13887         prompt("Delay 12")
       
 13888         promptgroup("42 - Link 8-F")
       
 13889         interest(1)
       
 13890     }
       
 13891     field(DOLC, DBF_INLINK) {
       
 13892         promptgroup("42 - Link 8-F")
       
 13893         interest(1)
       
 13894         prompt("Input link 12")
       
 13895     }
       
 13896     field(DOC, DBF_DOUBLE) {
       
 13897         interest(1)
       
 13898         prompt("Value 12")
       
 13899     }
       
 13900     field(LNKC, DBF_OUTLINK) {
       
 13901         prompt("Output Link 12")
       
 13902         promptgroup("42 - Link 8-F")
       
 13903         interest(1)
       
 13904     }
       
 13905     field(DLYD, DBF_DOUBLE) {
       
 13906         prompt("Delay 13")
       
 13907         interest(1)
       
 13908         promptgroup("42 - Link 8-F")
       
 13909     }
       
 13910     field(DOLD, DBF_INLINK) {
       
 13911         prompt("Input link 13")
       
 13912         promptgroup("42 - Link 8-F")
       
 13913         interest(1)
       
 13914     }
       
 13915     field(DOD, DBF_DOUBLE) {
       
 13916         prompt("Value 13")
       
 13917         interest(1)
       
 13918     }
       
 13919     field(LNKD, DBF_OUTLINK) {
       
 13920         interest(1)
       
 13921         promptgroup("42 - Link 8-F")
       
 13922         prompt("Output Link 13")
       
 13923     }
       
 13924     field(DLYE, DBF_DOUBLE) {
       
 13925         prompt("Delay 14")
       
 13926         interest(1)
       
 13927         promptgroup("42 - Link 8-F")
       
 13928     }
       
 13929     field(DOLE, DBF_INLINK) {
       
 13930         prompt("Input link 14")
       
 13931         interest(1)
       
 13932         promptgroup("42 - Link 8-F")
       
 13933     }
       
 13934     field(DOE, DBF_DOUBLE) {
       
 13935         prompt("Value 14")
       
 13936         interest(1)
       
 13937     }
       
 13938     field(LNKE, DBF_OUTLINK) {
       
 13939         prompt("Output Link 14")
       
 13940         interest(1)
       
 13941         promptgroup("42 - Link 8-F")
       
 13942     }
       
 13943     field(DLYF, DBF_DOUBLE) {
       
 13944         promptgroup("42 - Link 8-F")
       
 13945         interest(1)
       
 13946         prompt("Delay 15")
       
 13947     }
       
 13948     field(DOLF, DBF_INLINK) {
       
 13949         prompt("Input link 15")
       
 13950         interest(1)
       
 13951         promptgroup("42 - Link 8-F")
       
 13952     }
       
 13953     field(DOF, DBF_DOUBLE) {
       
 13954         interest(1)
       
 13955         prompt("Value 15")
       
 13956     }
       
 13957     field(LNKF, DBF_OUTLINK) {
       
 13958         prompt("Output Link 15")
       
 13959         interest(1)
       
 13960         promptgroup("42 - Link 8-F")
       
 13961     }
       
 13962 }
       
 13963 recordtype(transform) {
       
 13964     %#include "epicsTypes.h"
       
 13965     %#include "link.h"
       
 13966     %#include "epicsMutex.h"
       
 13967     %#include "ellLib.h"
       
 13968     %#include "epicsTime.h"
       
 13969     field(NAME, DBF_STRING) {
       
 13970         special(SPC_NOMOD)
       
 13971         prompt("Record Name")
       
 13972         size(61)
       
 13973     }
       
 13974     field(DESC, DBF_STRING) {
       
 13975         size(41)
       
 13976         prompt("Descriptor")
       
 13977         promptgroup("10 - Common")
       
 13978     }
       
 13979     field(ASG, DBF_STRING) {
       
 13980         size(29)
       
 13981         prompt("Access Security Group")
       
 13982         special(SPC_AS)
       
 13983         promptgroup("10 - Common")
       
 13984     }
       
 13985     field(SCAN, DBF_MENU) {
       
 13986         promptgroup("20 - Scan")
       
 13987         interest(1)
       
 13988         menu(menuScan)
       
 13989         special(SPC_SCAN)
       
 13990         prompt("Scan Mechanism")
       
 13991     }
       
 13992     field(PINI, DBF_MENU) {
       
 13993         prompt("Process at iocInit")
       
 13994         interest(1)
       
 13995         menu(menuPini)
       
 13996         promptgroup("20 - Scan")
       
 13997     }
       
 13998     field(PHAS, DBF_SHORT) {
       
 13999         prompt("Scan Phase")
       
 14000         promptgroup("20 - Scan")
       
 14001         special(SPC_SCAN)
       
 14002         interest(1)
       
 14003     }
       
 14004     field(EVNT, DBF_STRING) {
       
 14005         interest(1)
       
 14006         special(SPC_SCAN)
       
 14007         promptgroup("20 - Scan")
       
 14008         size(40)
       
 14009         prompt("Event Name")
       
 14010     }
       
 14011     field(TSE, DBF_SHORT) {
       
 14012         prompt("Time Stamp Event")
       
 14013         promptgroup("20 - Scan")
       
 14014         interest(1)
       
 14015     }
       
 14016     field(TSEL, DBF_INLINK) {
       
 14017         interest(1)
       
 14018         promptgroup("20 - Scan")
       
 14019         prompt("Time Stamp Link")
       
 14020     }
       
 14021     field(DTYP, DBF_DEVICE) {
       
 14022         prompt("Device Type")
       
 14023         interest(1)
       
 14024         promptgroup("10 - Common")
       
 14025     }
       
 14026     field(DISV, DBF_SHORT) {
       
 14027         promptgroup("20 - Scan")
       
 14028         initial("1")
       
 14029         prompt("Disable Value")
       
 14030     }
       
 14031     field(DISA, DBF_SHORT) {
       
 14032         prompt("Disable")
       
 14033     }
       
 14034     field(SDIS, DBF_INLINK) {
       
 14035         interest(1)
       
 14036         promptgroup("20 - Scan")
       
 14037         prompt("Scanning Disable")
       
 14038     }
       
 14039     field(MLOK, DBF_NOACCESS) {
       
 14040         special(SPC_NOMOD)
       
 14041         interest(4)
       
 14042         prompt("Monitor lock")
       
 14043         extra("epicsMutexId        mlok")
       
 14044     }
       
 14045     field(MLIS, DBF_NOACCESS) {
       
 14046         prompt("Monitor List")
       
 14047         extra("ELLLIST             mlis")
       
 14048         interest(4)
       
 14049         special(SPC_NOMOD)
       
 14050     }
       
 14051     field(BKLNK, DBF_NOACCESS) {
       
 14052         prompt("Backwards link tracking")
       
 14053         extra("ELLLIST             bklnk")
       
 14054         interest(4)
       
 14055         special(SPC_NOMOD)
       
 14056     }
       
 14057     field(DISP, DBF_UCHAR) {
       
 14058         prompt("Disable putField")
       
 14059     }
       
 14060     field(PROC, DBF_UCHAR) {
       
 14061         interest(3)
       
 14062         pp(TRUE)
       
 14063         prompt("Force Processing")
       
 14064     }
       
 14065     field(STAT, DBF_MENU) {
       
 14066         initial("UDF")
       
 14067         prompt("Alarm Status")
       
 14068         special(SPC_NOMOD)
       
 14069         menu(menuAlarmStat)
       
 14070     }
       
 14071     field(SEVR, DBF_MENU) {
       
 14072         prompt("Alarm Severity")
       
 14073         special(SPC_NOMOD)
       
 14074         menu(menuAlarmSevr)
       
 14075     }
       
 14076     field(NSTA, DBF_MENU) {
       
 14077         special(SPC_NOMOD)
       
 14078         interest(2)
       
 14079         menu(menuAlarmStat)
       
 14080         prompt("New Alarm Status")
       
 14081     }
       
 14082     field(NSEV, DBF_MENU) {
       
 14083         prompt("New Alarm Severity")
       
 14084         menu(menuAlarmSevr)
       
 14085         interest(2)
       
 14086         special(SPC_NOMOD)
       
 14087     }
       
 14088     field(ACKS, DBF_MENU) {
       
 14089         special(SPC_NOMOD)
       
 14090         interest(2)
       
 14091         menu(menuAlarmSevr)
       
 14092         prompt("Alarm Ack Severity")
       
 14093     }
       
 14094     field(ACKT, DBF_MENU) {
       
 14095         prompt("Alarm Ack Transient")
       
 14096         initial("YES")
       
 14097         promptgroup("70 - Alarm")
       
 14098         interest(2)
       
 14099         menu(menuYesNo)
       
 14100         special(SPC_NOMOD)
       
 14101     }
       
 14102     field(DISS, DBF_MENU) {
       
 14103         menu(menuAlarmSevr)
       
 14104         interest(1)
       
 14105         promptgroup("70 - Alarm")
       
 14106         prompt("Disable Alarm Sevrty")
       
 14107     }
       
 14108     field(LCNT, DBF_UCHAR) {
       
 14109         prompt("Lock Count")
       
 14110         special(SPC_NOMOD)
       
 14111         interest(2)
       
 14112     }
       
 14113     field(PACT, DBF_UCHAR) {
       
 14114         prompt("Record active")
       
 14115         interest(1)
       
 14116         special(SPC_NOMOD)
       
 14117     }
       
 14118     field(PUTF, DBF_UCHAR) {
       
 14119         special(SPC_NOMOD)
       
 14120         interest(1)
       
 14121         prompt("dbPutField process")
       
 14122     }
       
 14123     field(RPRO, DBF_UCHAR) {
       
 14124         prompt("Reprocess ")
       
 14125         special(SPC_NOMOD)
       
 14126         interest(1)
       
 14127     }
       
 14128     field(ASP, DBF_NOACCESS) {
       
 14129         prompt("Access Security Pvt")
       
 14130         extra("struct asgMember    *asp")
       
 14131         special(SPC_NOMOD)
       
 14132         interest(4)
       
 14133     }
       
 14134     field(PPN, DBF_NOACCESS) {
       
 14135         interest(4)
       
 14136         special(SPC_NOMOD)
       
 14137         prompt("pprocessNotify")
       
 14138         extra("struct processNotify *ppn")
       
 14139     }
       
 14140     field(PPNR, DBF_NOACCESS) {
       
 14141         special(SPC_NOMOD)
       
 14142         interest(4)
       
 14143         extra("struct processNotifyRecord *ppnr")
       
 14144         prompt("pprocessNotifyRecord")
       
 14145     }
       
 14146     field(SPVT, DBF_NOACCESS) {
       
 14147         interest(4)
       
 14148         special(SPC_NOMOD)
       
 14149         extra("struct scan_element *spvt")
       
 14150         prompt("Scan Private")
       
 14151     }
       
 14152     field(RSET, DBF_NOACCESS) {
       
 14153         special(SPC_NOMOD)
       
 14154         interest(4)
       
 14155         extra("struct typed_rset   *rset")
       
 14156         prompt("Address of RSET")
       
 14157     }
       
 14158     field(DSET, DBF_NOACCESS) {
       
 14159         interest(4)
       
 14160         special(SPC_NOMOD)
       
 14161         prompt("DSET address")
       
 14162         extra("struct dset         *dset")
       
 14163     }
       
 14164     field(DPVT, DBF_NOACCESS) {
       
 14165         interest(4)
       
 14166         special(SPC_NOMOD)
       
 14167         prompt("Device Private")
       
 14168         extra("void                *dpvt")
       
 14169     }
       
 14170     field(RDES, DBF_NOACCESS) {
       
 14171         special(SPC_NOMOD)
       
 14172         interest(4)
       
 14173         prompt("Address of dbRecordType")
       
 14174         extra("struct dbRecordType *rdes")
       
 14175     }
       
 14176     field(LSET, DBF_NOACCESS) {
       
 14177         interest(4)
       
 14178         special(SPC_NOMOD)
       
 14179         extra("struct lockRecord   *lset")
       
 14180         prompt("Lock Set")
       
 14181     }
       
 14182     field(PRIO, DBF_MENU) {
       
 14183         prompt("Scheduling Priority")
       
 14184         menu(menuPriority)
       
 14185         interest(1)
       
 14186         special(SPC_SCAN)
       
 14187         promptgroup("20 - Scan")
       
 14188     }
       
 14189     field(TPRO, DBF_UCHAR) {
       
 14190         prompt("Trace Processing")
       
 14191     }
       
 14192     field(BKPT, DBF_NOACCESS) {
       
 14193         special(SPC_NOMOD)
       
 14194         interest(1)
       
 14195         prompt("Break Point")
       
 14196         extra("char                bkpt")
       
 14197     }
       
 14198     field(UDF, DBF_UCHAR) {
       
 14199         initial("1")
       
 14200         prompt("Undefined")
       
 14201         interest(1)
       
 14202         pp(TRUE)
       
 14203         promptgroup("10 - Common")
       
 14204     }
       
 14205     field(UDFS, DBF_MENU) {
       
 14206         initial("INVALID")
       
 14207         prompt("Undefined Alarm Sevrty")
       
 14208         interest(1)
       
 14209         menu(menuAlarmSevr)
       
 14210         promptgroup("70 - Alarm")
       
 14211     }
       
 14212     field(TIME, DBF_NOACCESS) {
       
 14213         prompt("Time")
       
 14214         extra("epicsTimeStamp      time")
       
 14215         interest(2)
       
 14216         special(SPC_NOMOD)
       
 14217     }
       
 14218     field(FLNK, DBF_FWDLINK) {
       
 14219         interest(1)
       
 14220         promptgroup("20 - Scan")
       
 14221         prompt("Forward Process Link")
       
 14222     }
       
 14223     field(VERS, DBF_FLOAT) {
       
 14224         initial("1")
       
 14225         prompt("Code Version")
       
 14226         special(SPC_NOMOD)
       
 14227     }
       
 14228     field(RPVT, DBF_NOACCESS) {
       
 14229         prompt("Record Private")
       
 14230         size(4)
       
 14231         extra("void *         rpvt")
       
 14232         special(SPC_NOMOD)
       
 14233         interest(4)
       
 14234     }
       
 14235     field(IVLA, DBF_MENU) {
       
 14236         prompt("Invalid link action")
       
 14237         initial("0")
       
 14238         promptgroup("10 - Common")
       
 14239         menu(transformIVLA)
       
 14240         interest(1)
       
 14241     }
       
 14242     field(COPT, DBF_MENU) {
       
 14243         initial("Conditional")
       
 14244         prompt("Calc option")
       
 14245         interest(1)
       
 14246         menu(transformCOPT)
       
 14247         promptgroup("10 - Common")
       
 14248     }
       
 14249     field(VAL, DBF_DOUBLE) {
       
 14250         prompt("Result")
       
 14251     }
       
 14252     field(CLCA, DBF_STRING) {
       
 14253         prompt("Calculation A")
       
 14254         size(120)
       
 14255         promptgroup("10 - Common")
       
 14256         special(SPC_MOD)
       
 14257     }
       
 14258     field(CLCB, DBF_STRING) {
       
 14259         prompt("Calculation B")
       
 14260         size(120)
       
 14261         promptgroup("10 - Common")
       
 14262         special(SPC_MOD)
       
 14263     }
       
 14264     field(CLCC, DBF_STRING) {
       
 14265         size(120)
       
 14266         prompt("Calculation C")
       
 14267         special(SPC_MOD)
       
 14268         promptgroup("10 - Common")
       
 14269     }
       
 14270     field(CLCD, DBF_STRING) {
       
 14271         special(SPC_MOD)
       
 14272         promptgroup("10 - Common")
       
 14273         size(120)
       
 14274         prompt("Calculation D")
       
 14275     }
       
 14276     field(CLCE, DBF_STRING) {
       
 14277         prompt("Calculation E")
       
 14278         size(120)
       
 14279         promptgroup("10 - Common")
       
 14280         special(SPC_MOD)
       
 14281     }
       
 14282     field(CLCF, DBF_STRING) {
       
 14283         promptgroup("10 - Common")
       
 14284         special(SPC_MOD)
       
 14285         prompt("Calculation F")
       
 14286         size(120)
       
 14287     }
       
 14288     field(CLCG, DBF_STRING) {
       
 14289         promptgroup("10 - Common")
       
 14290         special(SPC_MOD)
       
 14291         prompt("Calculation G")
       
 14292         size(120)
       
 14293     }
       
 14294     field(CLCH, DBF_STRING) {
       
 14295         special(SPC_MOD)
       
 14296         promptgroup("10 - Common")
       
 14297         size(120)
       
 14298         prompt("Calculation H")
       
 14299     }
       
 14300     field(CLCI, DBF_STRING) {
       
 14301         prompt("Calculation I")
       
 14302         size(120)
       
 14303         promptgroup("10 - Common")
       
 14304         special(SPC_MOD)
       
 14305     }
       
 14306     field(CLCJ, DBF_STRING) {
       
 14307         size(120)
       
 14308         prompt("Calculation J")
       
 14309         special(SPC_MOD)
       
 14310         promptgroup("10 - Common")
       
 14311     }
       
 14312     field(CLCK, DBF_STRING) {
       
 14313         special(SPC_MOD)
       
 14314         promptgroup("10 - Common")
       
 14315         size(120)
       
 14316         prompt("Calculation K")
       
 14317     }
       
 14318     field(CLCL, DBF_STRING) {
       
 14319         prompt("Calculation L")
       
 14320         size(120)
       
 14321         promptgroup("10 - Common")
       
 14322         special(SPC_MOD)
       
 14323     }
       
 14324     field(CLCM, DBF_STRING) {
       
 14325         size(120)
       
 14326         prompt("Calculation M")
       
 14327         special(SPC_MOD)
       
 14328         promptgroup("10 - Common")
       
 14329     }
       
 14330     field(CLCN, DBF_STRING) {
       
 14331         size(120)
       
 14332         prompt("Calculation N")
       
 14333         special(SPC_MOD)
       
 14334         promptgroup("10 - Common")
       
 14335     }
       
 14336     field(CLCO, DBF_STRING) {
       
 14337         special(SPC_MOD)
       
 14338         promptgroup("10 - Common")
       
 14339         size(120)
       
 14340         prompt("Calculation O")
       
 14341     }
       
 14342     field(CLCP, DBF_STRING) {
       
 14343         special(SPC_MOD)
       
 14344         promptgroup("10 - Common")
       
 14345         size(120)
       
 14346         prompt("Calculation P")
       
 14347     }
       
 14348     field(CAV, DBF_LONG) {
       
 14349         prompt("CALC Invalid")
       
 14350         interest(1)
       
 14351     }
       
 14352     field(CBV, DBF_LONG) {
       
 14353         prompt("CALC Invalid")
       
 14354         interest(1)
       
 14355     }
       
 14356     field(CCV, DBF_LONG) {
       
 14357         interest(1)
       
 14358         prompt("CALC Invalid")
       
 14359     }
       
 14360     field(CDV, DBF_LONG) {
       
 14361         prompt("CALC Invalid")
       
 14362         interest(1)
       
 14363     }
       
 14364     field(CEV, DBF_LONG) {
       
 14365         interest(1)
       
 14366         prompt("CALC Invalid")
       
 14367     }
       
 14368     field(CFV, DBF_LONG) {
       
 14369         interest(1)
       
 14370         prompt("CALC Invalid")
       
 14371     }
       
 14372     field(CGV, DBF_LONG) {
       
 14373         prompt("CALC Invalid")
       
 14374         interest(1)
       
 14375     }
       
 14376     field(CHV, DBF_LONG) {
       
 14377         interest(1)
       
 14378         prompt("CALC Invalid")
       
 14379     }
       
 14380     field(CIV, DBF_LONG) {
       
 14381         prompt("CALC Invalid")
       
 14382         interest(1)
       
 14383     }
       
 14384     field(CJV, DBF_LONG) {
       
 14385         prompt("CALC Invalid")
       
 14386         interest(1)
       
 14387     }
       
 14388     field(CKV, DBF_LONG) {
       
 14389         interest(1)
       
 14390         prompt("CALC Invalid")
       
 14391     }
       
 14392     field(CLV, DBF_LONG) {
       
 14393         interest(1)
       
 14394         prompt("CALC Invalid")
       
 14395     }
       
 14396     field(CMV, DBF_LONG) {
       
 14397         interest(1)
       
 14398         prompt("CALC Invalid")
       
 14399     }
       
 14400     field(CNV, DBF_LONG) {
       
 14401         prompt("CALC Invalid")
       
 14402         interest(1)
       
 14403     }
       
 14404     field(COV, DBF_LONG) {
       
 14405         prompt("CALC Invalid")
       
 14406         interest(1)
       
 14407     }
       
 14408     field(CPV, DBF_LONG) {
       
 14409         interest(1)
       
 14410         prompt("CALC Invalid")
       
 14411     }
       
 14412     field(INPA, DBF_INLINK) {
       
 14413         promptgroup("10 - Common")
       
 14414         special(SPC_MOD)
       
 14415         interest(1)
       
 14416         prompt("Input A")
       
 14417     }
       
 14418     field(INPB, DBF_INLINK) {
       
 14419         prompt("Input B")
       
 14420         promptgroup("10 - Common")
       
 14421         special(SPC_MOD)
       
 14422         interest(1)
       
 14423     }
       
 14424     field(INPC, DBF_INLINK) {
       
 14425         prompt("Input C")
       
 14426         promptgroup("10 - Common")
       
 14427         special(SPC_MOD)
       
 14428         interest(1)
       
 14429     }
       
 14430     field(INPD, DBF_INLINK) {
       
 14431         prompt("Input D")
       
 14432         promptgroup("10 - Common")
       
 14433         special(SPC_MOD)
       
 14434         interest(1)
       
 14435     }
       
 14436     field(INPE, DBF_INLINK) {
       
 14437         prompt("Input E")
       
 14438         interest(1)
       
 14439         special(SPC_MOD)
       
 14440         promptgroup("10 - Common")
       
 14441     }
       
 14442     field(INPF, DBF_INLINK) {
       
 14443         prompt("Input F")
       
 14444         special(SPC_MOD)
       
 14445         interest(1)
       
 14446         promptgroup("10 - Common")
       
 14447     }
       
 14448     field(INPG, DBF_INLINK) {
       
 14449         special(SPC_MOD)
       
 14450         interest(1)
       
 14451         promptgroup("10 - Common")
       
 14452         prompt("Input G")
       
 14453     }
       
 14454     field(INPH, DBF_INLINK) {
       
 14455         prompt("Input H")
       
 14456         interest(1)
       
 14457         special(SPC_MOD)
       
 14458         promptgroup("10 - Common")
       
 14459     }
       
 14460     field(INPI, DBF_INLINK) {
       
 14461         prompt("Input I")
       
 14462         special(SPC_MOD)
       
 14463         interest(1)
       
 14464         promptgroup("10 - Common")
       
 14465     }
       
 14466     field(INPJ, DBF_INLINK) {
       
 14467         prompt("Input J")
       
 14468         interest(1)
       
 14469         special(SPC_MOD)
       
 14470         promptgroup("10 - Common")
       
 14471     }
       
 14472     field(INPK, DBF_INLINK) {
       
 14473         prompt("Input K")
       
 14474         interest(1)
       
 14475         special(SPC_MOD)
       
 14476         promptgroup("10 - Common")
       
 14477     }
       
 14478     field(INPL, DBF_INLINK) {
       
 14479         prompt("Input L")
       
 14480         promptgroup("10 - Common")
       
 14481         special(SPC_MOD)
       
 14482         interest(1)
       
 14483     }
       
 14484     field(INPM, DBF_INLINK) {
       
 14485         promptgroup("10 - Common")
       
 14486         interest(1)
       
 14487         special(SPC_MOD)
       
 14488         prompt("Input M")
       
 14489     }
       
 14490     field(INPN, DBF_INLINK) {
       
 14491         prompt("Input N")
       
 14492         special(SPC_MOD)
       
 14493         interest(1)
       
 14494         promptgroup("10 - Common")
       
 14495     }
       
 14496     field(INPO, DBF_INLINK) {
       
 14497         prompt("Input O")
       
 14498         special(SPC_MOD)
       
 14499         interest(1)
       
 14500         promptgroup("10 - Common")
       
 14501     }
       
 14502     field(INPP, DBF_INLINK) {
       
 14503         prompt("Input P")
       
 14504         interest(1)
       
 14505         special(SPC_MOD)
       
 14506         promptgroup("10 - Common")
       
 14507     }
       
 14508     field(OUTA, DBF_OUTLINK) {
       
 14509         prompt("Output A")
       
 14510         interest(1)
       
 14511         special(SPC_MOD)
       
 14512         promptgroup("10 - Common")
       
 14513     }
       
 14514     field(OUTB, DBF_OUTLINK) {
       
 14515         promptgroup("10 - Common")
       
 14516         interest(1)
       
 14517         special(SPC_MOD)
       
 14518         prompt("Output B")
       
 14519     }
       
 14520     field(OUTC, DBF_OUTLINK) {
       
 14521         special(SPC_MOD)
       
 14522         interest(1)
       
 14523         promptgroup("10 - Common")
       
 14524         prompt("Output C")
       
 14525     }
       
 14526     field(OUTD, DBF_OUTLINK) {
       
 14527         prompt("Output D")
       
 14528         promptgroup("10 - Common")
       
 14529         special(SPC_MOD)
       
 14530         interest(1)
       
 14531     }
       
 14532     field(OUTE, DBF_OUTLINK) {
       
 14533         prompt("Output E")
       
 14534         interest(1)
       
 14535         special(SPC_MOD)
       
 14536         promptgroup("10 - Common")
       
 14537     }
       
 14538     field(OUTF, DBF_OUTLINK) {
       
 14539         interest(1)
       
 14540         special(SPC_MOD)
       
 14541         promptgroup("10 - Common")
       
 14542         prompt("Output F")
       
 14543     }
       
 14544     field(OUTG, DBF_OUTLINK) {
       
 14545         interest(1)
       
 14546         special(SPC_MOD)
       
 14547         promptgroup("10 - Common")
       
 14548         prompt("Output G")
       
 14549     }
       
 14550     field(OUTH, DBF_OUTLINK) {
       
 14551         promptgroup("10 - Common")
       
 14552         interest(1)
       
 14553         special(SPC_MOD)
       
 14554         prompt("Output H")
       
 14555     }
       
 14556     field(OUTI, DBF_OUTLINK) {
       
 14557         promptgroup("10 - Common")
       
 14558         interest(1)
       
 14559         special(SPC_MOD)
       
 14560         prompt("Output I")
       
 14561     }
       
 14562     field(OUTJ, DBF_OUTLINK) {
       
 14563         promptgroup("10 - Common")
       
 14564         special(SPC_MOD)
       
 14565         interest(1)
       
 14566         prompt("Output J")
       
 14567     }
       
 14568     field(OUTK, DBF_OUTLINK) {
       
 14569         promptgroup("10 - Common")
       
 14570         interest(1)
       
 14571         special(SPC_MOD)
       
 14572         prompt("Output K")
       
 14573     }
       
 14574     field(OUTL, DBF_OUTLINK) {
       
 14575         promptgroup("10 - Common")
       
 14576         interest(1)
       
 14577         special(SPC_MOD)
       
 14578         prompt("Output L")
       
 14579     }
       
 14580     field(OUTM, DBF_OUTLINK) {
       
 14581         interest(1)
       
 14582         special(SPC_MOD)
       
 14583         promptgroup("10 - Common")
       
 14584         prompt("Output M")
       
 14585     }
       
 14586     field(OUTN, DBF_OUTLINK) {
       
 14587         prompt("Output N")
       
 14588         promptgroup("10 - Common")
       
 14589         interest(1)
       
 14590         special(SPC_MOD)
       
 14591     }
       
 14592     field(OUTO, DBF_OUTLINK) {
       
 14593         prompt("Output O")
       
 14594         interest(1)
       
 14595         special(SPC_MOD)
       
 14596         promptgroup("10 - Common")
       
 14597     }
       
 14598     field(OUTP, DBF_OUTLINK) {
       
 14599         prompt("Output P")
       
 14600         promptgroup("10 - Common")
       
 14601         special(SPC_MOD)
       
 14602         interest(1)
       
 14603     }
       
 14604     field(EGU, DBF_STRING) {
       
 14605         interest(1)
       
 14606         promptgroup("10 - Common")
       
 14607         size(16)
       
 14608         prompt("Units Name")
       
 14609     }
       
 14610     field(PREC, DBF_SHORT) {
       
 14611         prompt("Display Precision")
       
 14612         promptgroup("10 - Common")
       
 14613         interest(1)
       
 14614     }
       
 14615     field(A, DBF_DOUBLE) {
       
 14616         special(SPC_MOD)
       
 14617         pp(TRUE)
       
 14618         promptgroup("10 - Common")
       
 14619         prompt("Value of A")
       
 14620     }
       
 14621     field(B, DBF_DOUBLE) {
       
 14622         prompt("Value of B")
       
 14623         promptgroup("10 - Common")
       
 14624         pp(TRUE)
       
 14625         special(SPC_MOD)
       
 14626     }
       
 14627     field(C, DBF_DOUBLE) {
       
 14628         prompt("Value of C")
       
 14629         promptgroup("10 - Common")
       
 14630         pp(TRUE)
       
 14631         special(SPC_MOD)
       
 14632     }
       
 14633     field(D, DBF_DOUBLE) {
       
 14634         prompt("Value of D")
       
 14635         pp(TRUE)
       
 14636         promptgroup("10 - Common")
       
 14637         special(SPC_MOD)
       
 14638     }
       
 14639     field(E, DBF_DOUBLE) {
       
 14640         special(SPC_MOD)
       
 14641         pp(TRUE)
       
 14642         promptgroup("10 - Common")
       
 14643         prompt("Value of E")
       
 14644     }
       
 14645     field(F, DBF_DOUBLE) {
       
 14646         special(SPC_MOD)
       
 14647         pp(TRUE)
       
 14648         promptgroup("10 - Common")
       
 14649         prompt("Value of F")
       
 14650     }
       
 14651     field(G, DBF_DOUBLE) {
       
 14652         prompt("Value of G")
       
 14653         special(SPC_MOD)
       
 14654         pp(TRUE)
       
 14655         promptgroup("10 - Common")
       
 14656     }
       
 14657     field(H, DBF_DOUBLE) {
       
 14658         promptgroup("10 - Common")
       
 14659         pp(TRUE)
       
 14660         special(SPC_MOD)
       
 14661         prompt("Value of H")
       
 14662     }
       
 14663     field(I, DBF_DOUBLE) {
       
 14664         promptgroup("10 - Common")
       
 14665         pp(TRUE)
       
 14666         special(SPC_MOD)
       
 14667         prompt("Value of I")
       
 14668     }
       
 14669     field(J, DBF_DOUBLE) {
       
 14670         prompt("Value of J")
       
 14671         special(SPC_MOD)
       
 14672         promptgroup("10 - Common")
       
 14673         pp(TRUE)
       
 14674     }
       
 14675     field(K, DBF_DOUBLE) {
       
 14676         prompt("Value of K")
       
 14677         special(SPC_MOD)
       
 14678         pp(TRUE)
       
 14679         promptgroup("10 - Common")
       
 14680     }
       
 14681     field(L, DBF_DOUBLE) {
       
 14682         promptgroup("10 - Common")
       
 14683         pp(TRUE)
       
 14684         special(SPC_MOD)
       
 14685         prompt("Value of L")
       
 14686     }
       
 14687     field(M, DBF_DOUBLE) {
       
 14688         prompt("Value of M")
       
 14689         pp(TRUE)
       
 14690         promptgroup("10 - Common")
       
 14691         special(SPC_MOD)
       
 14692     }
       
 14693     field(N, DBF_DOUBLE) {
       
 14694         promptgroup("10 - Common")
       
 14695         pp(TRUE)
       
 14696         special(SPC_MOD)
       
 14697         prompt("Value of N")
       
 14698     }
       
 14699     field(O, DBF_DOUBLE) {
       
 14700         prompt("Value of O")
       
 14701         special(SPC_MOD)
       
 14702         pp(TRUE)
       
 14703         promptgroup("10 - Common")
       
 14704     }
       
 14705     field(P, DBF_DOUBLE) {
       
 14706         prompt("Value of P")
       
 14707         special(SPC_MOD)
       
 14708         pp(TRUE)
       
 14709         promptgroup("10 - Common")
       
 14710     }
       
 14711     field(LA, DBF_DOUBLE) {
       
 14712         prompt("Prev Value of A")
       
 14713         special(SPC_NOMOD)
       
 14714         interest(3)
       
 14715     }
       
 14716     field(LB, DBF_DOUBLE) {
       
 14717         interest(3)
       
 14718         special(SPC_NOMOD)
       
 14719         prompt("Prev Value of B")
       
 14720     }
       
 14721     field(LC, DBF_DOUBLE) {
       
 14722         prompt("Prev Value of C")
       
 14723         special(SPC_NOMOD)
       
 14724         interest(3)
       
 14725     }
       
 14726     field(LD, DBF_DOUBLE) {
       
 14727         special(SPC_NOMOD)
       
 14728         interest(3)
       
 14729         prompt("Prev Value of D")
       
 14730     }
       
 14731     field(LE, DBF_DOUBLE) {
       
 14732         special(SPC_NOMOD)
       
 14733         interest(3)
       
 14734         prompt("Prev Value of E")
       
 14735     }
       
 14736     field(LF, DBF_DOUBLE) {
       
 14737         special(SPC_NOMOD)
       
 14738         interest(3)
       
 14739         prompt("Prev Value of F")
       
 14740     }
       
 14741     field(LG, DBF_DOUBLE) {
       
 14742         special(SPC_NOMOD)
       
 14743         interest(3)
       
 14744         prompt("Prev Value of G")
       
 14745     }
       
 14746     field(LH, DBF_DOUBLE) {
       
 14747         special(SPC_NOMOD)
       
 14748         interest(3)
       
 14749         prompt("Prev Value of H")
       
 14750     }
       
 14751     field(LI, DBF_DOUBLE) {
       
 14752         interest(3)
       
 14753         special(SPC_NOMOD)
       
 14754         prompt("Prev Value of I")
       
 14755     }
       
 14756     field(LJ, DBF_DOUBLE) {
       
 14757         special(SPC_NOMOD)
       
 14758         interest(3)
       
 14759         prompt("Prev Value of J")
       
 14760     }
       
 14761     field(LK, DBF_DOUBLE) {
       
 14762         interest(3)
       
 14763         special(SPC_NOMOD)
       
 14764         prompt("Prev Value of K")
       
 14765     }
       
 14766     field(LL, DBF_DOUBLE) {
       
 14767         interest(3)
       
 14768         special(SPC_NOMOD)
       
 14769         prompt("Prev Value of L")
       
 14770     }
       
 14771     field(LM, DBF_DOUBLE) {
       
 14772         interest(3)
       
 14773         special(SPC_NOMOD)
       
 14774         prompt("Prev Value of M")
       
 14775     }
       
 14776     field(LN, DBF_DOUBLE) {
       
 14777         prompt("Prev Value of N")
       
 14778         interest(3)
       
 14779         special(SPC_NOMOD)
       
 14780     }
       
 14781     field(LO, DBF_DOUBLE) {
       
 14782         interest(3)
       
 14783         special(SPC_NOMOD)
       
 14784         prompt("Prev Value of O")
       
 14785     }
       
 14786     field(LP, DBF_DOUBLE) {
       
 14787         special(SPC_NOMOD)
       
 14788         interest(3)
       
 14789         prompt("Prev Value of P")
       
 14790     }
       
 14791     field(RPCA, DBF_NOACCESS) {
       
 14792         interest(4)
       
 14793         special(SPC_NOMOD)
       
 14794         prompt("Postfix Calc A")
       
 14795         extra("unsigned char rpca[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14796     }
       
 14797     field(RPCB, DBF_NOACCESS) {
       
 14798         special(SPC_NOMOD)
       
 14799         interest(4)
       
 14800         prompt("Postfix Calc B")
       
 14801         extra("unsigned char rpcb[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14802     }
       
 14803     field(RPCC, DBF_NOACCESS) {
       
 14804         special(SPC_NOMOD)
       
 14805         interest(4)
       
 14806         extra("unsigned char rpcc[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14807         prompt("Postfix Calc C")
       
 14808     }
       
 14809     field(RPCD, DBF_NOACCESS) {
       
 14810         interest(4)
       
 14811         special(SPC_NOMOD)
       
 14812         extra("unsigned char rpcd[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14813         prompt("Postfix Calc D")
       
 14814     }
       
 14815     field(RPCE, DBF_NOACCESS) {
       
 14816         prompt("Postfix Calc E")
       
 14817         extra("unsigned char rpce[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14818         special(SPC_NOMOD)
       
 14819         interest(4)
       
 14820     }
       
 14821     field(RPCF, DBF_NOACCESS) {
       
 14822         extra("unsigned char rpcf[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14823         prompt("Postfix Calc F")
       
 14824         special(SPC_NOMOD)
       
 14825         interest(4)
       
 14826     }
       
 14827     field(RPCG, DBF_NOACCESS) {
       
 14828         interest(4)
       
 14829         special(SPC_NOMOD)
       
 14830         extra("unsigned char rpcg[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14831         prompt("Postfix Calc G")
       
 14832     }
       
 14833     field(RPCH, DBF_NOACCESS) {
       
 14834         special(SPC_NOMOD)
       
 14835         interest(4)
       
 14836         prompt("Postfix Calc H")
       
 14837         extra("unsigned char rpch[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14838     }
       
 14839     field(RPCI, DBF_NOACCESS) {
       
 14840         interest(4)
       
 14841         special(SPC_NOMOD)
       
 14842         extra("unsigned char rpci[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14843         prompt("Postfix Calc I")
       
 14844     }
       
 14845     field(RPCJ, DBF_NOACCESS) {
       
 14846         extra("unsigned char rpcj[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14847         prompt("Postfix Calc J")
       
 14848         interest(4)
       
 14849         special(SPC_NOMOD)
       
 14850     }
       
 14851     field(RPCK, DBF_NOACCESS) {
       
 14852         special(SPC_NOMOD)
       
 14853         interest(4)
       
 14854         prompt("Postfix Calc K")
       
 14855         extra("unsigned char rpck[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14856     }
       
 14857     field(RPCL, DBF_NOACCESS) {
       
 14858         extra("unsigned char rpcl[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14859         prompt("Postfix Calc L")
       
 14860         special(SPC_NOMOD)
       
 14861         interest(4)
       
 14862     }
       
 14863     field(RPCM, DBF_NOACCESS) {
       
 14864         special(SPC_NOMOD)
       
 14865         interest(4)
       
 14866         extra("unsigned char rpcm[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14867         prompt("Postfix Calc M")
       
 14868     }
       
 14869     field(RPCN, DBF_NOACCESS) {
       
 14870         prompt("Postfix Calc N")
       
 14871         extra("unsigned char rpcn[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14872         interest(4)
       
 14873         special(SPC_NOMOD)
       
 14874     }
       
 14875     field(RPCO, DBF_NOACCESS) {
       
 14876         extra("unsigned char rpco[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14877         prompt("Postfix Calc O")
       
 14878         interest(4)
       
 14879         special(SPC_NOMOD)
       
 14880     }
       
 14881     field(RPCP, DBF_NOACCESS) {
       
 14882         extra("unsigned char rpcp[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 14883         prompt("Postfix Calc P")
       
 14884         special(SPC_NOMOD)
       
 14885         interest(4)
       
 14886     }
       
 14887     field(CMTA, DBF_STRING) {
       
 14888         promptgroup("10 - Common")
       
 14889         prompt("Comment A")
       
 14890         size(39)
       
 14891     }
       
 14892     field(CMTB, DBF_STRING) {
       
 14893         promptgroup("10 - Common")
       
 14894         size(39)
       
 14895         prompt("Comment B")
       
 14896     }
       
 14897     field(CMTC, DBF_STRING) {
       
 14898         prompt("Comment C")
       
 14899         size(39)
       
 14900         promptgroup("10 - Common")
       
 14901     }
       
 14902     field(CMTD, DBF_STRING) {
       
 14903         prompt("Comment D")
       
 14904         size(39)
       
 14905         promptgroup("10 - Common")
       
 14906     }
       
 14907     field(CMTE, DBF_STRING) {
       
 14908         prompt("Comment E")
       
 14909         size(39)
       
 14910         promptgroup("10 - Common")
       
 14911     }
       
 14912     field(CMTF, DBF_STRING) {
       
 14913         prompt("Comment F")
       
 14914         size(39)
       
 14915         promptgroup("10 - Common")
       
 14916     }
       
 14917     field(CMTG, DBF_STRING) {
       
 14918         promptgroup("10 - Common")
       
 14919         size(39)
       
 14920         prompt("Comment G")
       
 14921     }
       
 14922     field(CMTH, DBF_STRING) {
       
 14923         promptgroup("10 - Common")
       
 14924         prompt("Comment H")
       
 14925         size(39)
       
 14926     }
       
 14927     field(CMTI, DBF_STRING) {
       
 14928         size(39)
       
 14929         prompt("Comment I")
       
 14930         promptgroup("10 - Common")
       
 14931     }
       
 14932     field(CMTJ, DBF_STRING) {
       
 14933         promptgroup("10 - Common")
       
 14934         prompt("Comment J")
       
 14935         size(39)
       
 14936     }
       
 14937     field(CMTK, DBF_STRING) {
       
 14938         prompt("Comment K")
       
 14939         size(39)
       
 14940         promptgroup("10 - Common")
       
 14941     }
       
 14942     field(CMTL, DBF_STRING) {
       
 14943         size(39)
       
 14944         prompt("Comment L")
       
 14945         promptgroup("10 - Common")
       
 14946     }
       
 14947     field(CMTM, DBF_STRING) {
       
 14948         promptgroup("10 - Common")
       
 14949         prompt("Comment M")
       
 14950         size(39)
       
 14951     }
       
 14952     field(CMTN, DBF_STRING) {
       
 14953         prompt("Comment N")
       
 14954         size(39)
       
 14955         promptgroup("10 - Common")
       
 14956     }
       
 14957     field(CMTO, DBF_STRING) {
       
 14958         size(39)
       
 14959         prompt("Comment O")
       
 14960         promptgroup("10 - Common")
       
 14961     }
       
 14962     field(CMTP, DBF_STRING) {
       
 14963         prompt("Comment P")
       
 14964         size(39)
       
 14965         promptgroup("10 - Common")
       
 14966     }
       
 14967     field(MAP, DBF_SHORT) {
       
 14968         prompt("Input bitmap")
       
 14969         interest(3)
       
 14970         promptgroup("10 - Common")
       
 14971     }
       
 14972     field(IAV, DBF_MENU) {
       
 14973         interest(1)
       
 14974         menu(transformIAV)
       
 14975         special(SPC_NOMOD)
       
 14976         initial("1")
       
 14977         prompt("Input link valid")
       
 14978     }
       
 14979     field(IBV, DBF_MENU) {
       
 14980         prompt("Input link valid")
       
 14981         initial("1")
       
 14982         special(SPC_NOMOD)
       
 14983         interest(1)
       
 14984         menu(transformIAV)
       
 14985     }
       
 14986     field(ICV, DBF_MENU) {
       
 14987         prompt("Input link valid")
       
 14988         initial("1")
       
 14989         special(SPC_NOMOD)
       
 14990         menu(transformIAV)
       
 14991         interest(1)
       
 14992     }
       
 14993     field(IDV, DBF_MENU) {
       
 14994         prompt("Input link valid")
       
 14995         initial("1")
       
 14996         special(SPC_NOMOD)
       
 14997         interest(1)
       
 14998         menu(transformIAV)
       
 14999     }
       
 15000     field(IEV, DBF_MENU) {
       
 15001         special(SPC_NOMOD)
       
 15002         interest(1)
       
 15003         menu(transformIAV)
       
 15004         initial("1")
       
 15005         prompt("Input link valid")
       
 15006     }
       
 15007     field(IFV, DBF_MENU) {
       
 15008         prompt("Input link valid")
       
 15009         initial("1")
       
 15010         special(SPC_NOMOD)
       
 15011         interest(1)
       
 15012         menu(transformIAV)
       
 15013     }
       
 15014     field(IGV, DBF_MENU) {
       
 15015         initial("1")
       
 15016         prompt("Input link valid")
       
 15017         special(SPC_NOMOD)
       
 15018         interest(1)
       
 15019         menu(transformIAV)
       
 15020     }
       
 15021     field(IHV, DBF_MENU) {
       
 15022         initial("1")
       
 15023         prompt("Input link valid")
       
 15024         interest(1)
       
 15025         menu(transformIAV)
       
 15026         special(SPC_NOMOD)
       
 15027     }
       
 15028     field(IIV, DBF_MENU) {
       
 15029         interest(1)
       
 15030         menu(transformIAV)
       
 15031         special(SPC_NOMOD)
       
 15032         initial("1")
       
 15033         prompt("Input link valid")
       
 15034     }
       
 15035     field(IJV, DBF_MENU) {
       
 15036         interest(1)
       
 15037         menu(transformIAV)
       
 15038         special(SPC_NOMOD)
       
 15039         initial("1")
       
 15040         prompt("Input link valid")
       
 15041     }
       
 15042     field(IKV, DBF_MENU) {
       
 15043         menu(transformIAV)
       
 15044         interest(1)
       
 15045         special(SPC_NOMOD)
       
 15046         initial("1")
       
 15047         prompt("Input link valid")
       
 15048     }
       
 15049     field(ILV, DBF_MENU) {
       
 15050         menu(transformIAV)
       
 15051         interest(1)
       
 15052         special(SPC_NOMOD)
       
 15053         prompt("Input link valid")
       
 15054         initial("1")
       
 15055     }
       
 15056     field(IMV, DBF_MENU) {
       
 15057         special(SPC_NOMOD)
       
 15058         interest(1)
       
 15059         menu(transformIAV)
       
 15060         prompt("Input link valid")
       
 15061         initial("1")
       
 15062     }
       
 15063     field(INV, DBF_MENU) {
       
 15064         special(SPC_NOMOD)
       
 15065         interest(1)
       
 15066         menu(transformIAV)
       
 15067         initial("1")
       
 15068         prompt("Input link valid")
       
 15069     }
       
 15070     field(IOV, DBF_MENU) {
       
 15071         prompt("Input link valid")
       
 15072         initial("1")
       
 15073         special(SPC_NOMOD)
       
 15074         menu(transformIAV)
       
 15075         interest(1)
       
 15076     }
       
 15077     field(IPV, DBF_MENU) {
       
 15078         menu(transformIAV)
       
 15079         interest(1)
       
 15080         special(SPC_NOMOD)
       
 15081         initial("1")
       
 15082         prompt("Input link valid")
       
 15083     }
       
 15084     field(OAV, DBF_MENU) {
       
 15085         prompt("Output link valid")
       
 15086         initial("1")
       
 15087         menu(transformIAV)
       
 15088         interest(1)
       
 15089         special(SPC_NOMOD)
       
 15090     }
       
 15091     field(OBV, DBF_MENU) {
       
 15092         interest(1)
       
 15093         menu(transformIAV)
       
 15094         special(SPC_NOMOD)
       
 15095         initial("1")
       
 15096         prompt("Output link valid")
       
 15097     }
       
 15098     field(OCV, DBF_MENU) {
       
 15099         initial("1")
       
 15100         prompt("Output link valid")
       
 15101         menu(transformIAV)
       
 15102         interest(1)
       
 15103         special(SPC_NOMOD)
       
 15104     }
       
 15105     field(ODV, DBF_MENU) {
       
 15106         interest(1)
       
 15107         menu(transformIAV)
       
 15108         special(SPC_NOMOD)
       
 15109         initial("1")
       
 15110         prompt("Output link valid")
       
 15111     }
       
 15112     field(OEV, DBF_MENU) {
       
 15113         menu(transformIAV)
       
 15114         interest(1)
       
 15115         special(SPC_NOMOD)
       
 15116         prompt("Output link valid")
       
 15117         initial("1")
       
 15118     }
       
 15119     field(OFV, DBF_MENU) {
       
 15120         special(SPC_NOMOD)
       
 15121         menu(transformIAV)
       
 15122         interest(1)
       
 15123         initial("1")
       
 15124         prompt("Output link valid")
       
 15125     }
       
 15126     field(OGV, DBF_MENU) {
       
 15127         initial("1")
       
 15128         prompt("Output link valid")
       
 15129         interest(1)
       
 15130         menu(transformIAV)
       
 15131         special(SPC_NOMOD)
       
 15132     }
       
 15133     field(OHV, DBF_MENU) {
       
 15134         prompt("Output link valid")
       
 15135         initial("1")
       
 15136         interest(1)
       
 15137         menu(transformIAV)
       
 15138         special(SPC_NOMOD)
       
 15139     }
       
 15140     field(OIV, DBF_MENU) {
       
 15141         initial("1")
       
 15142         prompt("Output link valid")
       
 15143         special(SPC_NOMOD)
       
 15144         menu(transformIAV)
       
 15145         interest(1)
       
 15146     }
       
 15147     field(OJV, DBF_MENU) {
       
 15148         initial("1")
       
 15149         prompt("Output link valid")
       
 15150         interest(1)
       
 15151         menu(transformIAV)
       
 15152         special(SPC_NOMOD)
       
 15153     }
       
 15154     field(OKV, DBF_MENU) {
       
 15155         initial("1")
       
 15156         prompt("Output link valid")
       
 15157         interest(1)
       
 15158         menu(transformIAV)
       
 15159         special(SPC_NOMOD)
       
 15160     }
       
 15161     field(OLV, DBF_MENU) {
       
 15162         prompt("Output link valid")
       
 15163         initial("1")
       
 15164         interest(1)
       
 15165         menu(transformIAV)
       
 15166         special(SPC_NOMOD)
       
 15167     }
       
 15168     field(OMV, DBF_MENU) {
       
 15169         special(SPC_NOMOD)
       
 15170         menu(transformIAV)
       
 15171         interest(1)
       
 15172         initial("1")
       
 15173         prompt("Output link valid")
       
 15174     }
       
 15175     field(ONV, DBF_MENU) {
       
 15176         special(SPC_NOMOD)
       
 15177         menu(transformIAV)
       
 15178         interest(1)
       
 15179         initial("1")
       
 15180         prompt("Output link valid")
       
 15181     }
       
 15182     field(OOV, DBF_MENU) {
       
 15183         initial("1")
       
 15184         prompt("Output link valid")
       
 15185         special(SPC_NOMOD)
       
 15186         interest(1)
       
 15187         menu(transformIAV)
       
 15188     }
       
 15189     field(OPV, DBF_MENU) {
       
 15190         special(SPC_NOMOD)
       
 15191         interest(1)
       
 15192         menu(transformIAV)
       
 15193         initial("1")
       
 15194         prompt("Output link valid")
       
 15195     }
       
 15196 }
       
 15197 recordtype(fanout) {
       
 15198     %#include "epicsTypes.h"
       
 15199     %#include "link.h"
       
 15200     %#include "epicsMutex.h"
       
 15201     %#include "ellLib.h"
       
 15202     %#include "epicsTime.h"
       
 15203     field(NAME, DBF_STRING) {
       
 15204         size(61)
       
 15205         prompt("Record Name")
       
 15206         special(SPC_NOMOD)
       
 15207     }
       
 15208     field(DESC, DBF_STRING) {
       
 15209         size(41)
       
 15210         prompt("Descriptor")
       
 15211         promptgroup("10 - Common")
       
 15212     }
       
 15213     field(ASG, DBF_STRING) {
       
 15214         special(SPC_AS)
       
 15215         promptgroup("10 - Common")
       
 15216         size(29)
       
 15217         prompt("Access Security Group")
       
 15218     }
       
 15219     field(SCAN, DBF_MENU) {
       
 15220         prompt("Scan Mechanism")
       
 15221         interest(1)
       
 15222         menu(menuScan)
       
 15223         special(SPC_SCAN)
       
 15224         promptgroup("20 - Scan")
       
 15225     }
       
 15226     field(PINI, DBF_MENU) {
       
 15227         prompt("Process at iocInit")
       
 15228         promptgroup("20 - Scan")
       
 15229         interest(1)
       
 15230         menu(menuPini)
       
 15231     }
       
 15232     field(PHAS, DBF_SHORT) {
       
 15233         promptgroup("20 - Scan")
       
 15234         special(SPC_SCAN)
       
 15235         interest(1)
       
 15236         prompt("Scan Phase")
       
 15237     }
       
 15238     field(EVNT, DBF_STRING) {
       
 15239         promptgroup("20 - Scan")
       
 15240         interest(1)
       
 15241         special(SPC_SCAN)
       
 15242         prompt("Event Name")
       
 15243         size(40)
       
 15244     }
       
 15245     field(TSE, DBF_SHORT) {
       
 15246         prompt("Time Stamp Event")
       
 15247         interest(1)
       
 15248         promptgroup("20 - Scan")
       
 15249     }
       
 15250     field(TSEL, DBF_INLINK) {
       
 15251         prompt("Time Stamp Link")
       
 15252         interest(1)
       
 15253         promptgroup("20 - Scan")
       
 15254     }
       
 15255     field(DTYP, DBF_DEVICE) {
       
 15256         promptgroup("10 - Common")
       
 15257         interest(1)
       
 15258         prompt("Device Type")
       
 15259     }
       
 15260     field(DISV, DBF_SHORT) {
       
 15261         initial("1")
       
 15262         prompt("Disable Value")
       
 15263         promptgroup("20 - Scan")
       
 15264     }
       
 15265     field(DISA, DBF_SHORT) {
       
 15266         prompt("Disable")
       
 15267     }
       
 15268     field(SDIS, DBF_INLINK) {
       
 15269         prompt("Scanning Disable")
       
 15270         promptgroup("20 - Scan")
       
 15271         interest(1)
       
 15272     }
       
 15273     field(MLOK, DBF_NOACCESS) {
       
 15274         extra("epicsMutexId        mlok")
       
 15275         prompt("Monitor lock")
       
 15276         interest(4)
       
 15277         special(SPC_NOMOD)
       
 15278     }
       
 15279     field(MLIS, DBF_NOACCESS) {
       
 15280         prompt("Monitor List")
       
 15281         extra("ELLLIST             mlis")
       
 15282         special(SPC_NOMOD)
       
 15283         interest(4)
       
 15284     }
       
 15285     field(BKLNK, DBF_NOACCESS) {
       
 15286         prompt("Backwards link tracking")
       
 15287         extra("ELLLIST             bklnk")
       
 15288         interest(4)
       
 15289         special(SPC_NOMOD)
       
 15290     }
       
 15291     field(DISP, DBF_UCHAR) {
       
 15292         prompt("Disable putField")
       
 15293     }
       
 15294     field(PROC, DBF_UCHAR) {
       
 15295         prompt("Force Processing")
       
 15296         pp(TRUE)
       
 15297         interest(3)
       
 15298     }
       
 15299     field(STAT, DBF_MENU) {
       
 15300         initial("UDF")
       
 15301         prompt("Alarm Status")
       
 15302         menu(menuAlarmStat)
       
 15303         special(SPC_NOMOD)
       
 15304     }
       
 15305     field(SEVR, DBF_MENU) {
       
 15306         special(SPC_NOMOD)
       
 15307         menu(menuAlarmSevr)
       
 15308         prompt("Alarm Severity")
       
 15309     }
       
 15310     field(NSTA, DBF_MENU) {
       
 15311         prompt("New Alarm Status")
       
 15312         interest(2)
       
 15313         menu(menuAlarmStat)
       
 15314         special(SPC_NOMOD)
       
 15315     }
       
 15316     field(NSEV, DBF_MENU) {
       
 15317         menu(menuAlarmSevr)
       
 15318         interest(2)
       
 15319         special(SPC_NOMOD)
       
 15320         prompt("New Alarm Severity")
       
 15321     }
       
 15322     field(ACKS, DBF_MENU) {
       
 15323         special(SPC_NOMOD)
       
 15324         interest(2)
       
 15325         menu(menuAlarmSevr)
       
 15326         prompt("Alarm Ack Severity")
       
 15327     }
       
 15328     field(ACKT, DBF_MENU) {
       
 15329         special(SPC_NOMOD)
       
 15330         interest(2)
       
 15331         menu(menuYesNo)
       
 15332         promptgroup("70 - Alarm")
       
 15333         initial("YES")
       
 15334         prompt("Alarm Ack Transient")
       
 15335     }
       
 15336     field(DISS, DBF_MENU) {
       
 15337         promptgroup("70 - Alarm")
       
 15338         menu(menuAlarmSevr)
       
 15339         interest(1)
       
 15340         prompt("Disable Alarm Sevrty")
       
 15341     }
       
 15342     field(LCNT, DBF_UCHAR) {
       
 15343         prompt("Lock Count")
       
 15344         interest(2)
       
 15345         special(SPC_NOMOD)
       
 15346     }
       
 15347     field(PACT, DBF_UCHAR) {
       
 15348         interest(1)
       
 15349         special(SPC_NOMOD)
       
 15350         prompt("Record active")
       
 15351     }
       
 15352     field(PUTF, DBF_UCHAR) {
       
 15353         special(SPC_NOMOD)
       
 15354         interest(1)
       
 15355         prompt("dbPutField process")
       
 15356     }
       
 15357     field(RPRO, DBF_UCHAR) {
       
 15358         prompt("Reprocess ")
       
 15359         special(SPC_NOMOD)
       
 15360         interest(1)
       
 15361     }
       
 15362     field(ASP, DBF_NOACCESS) {
       
 15363         interest(4)
       
 15364         special(SPC_NOMOD)
       
 15365         extra("struct asgMember    *asp")
       
 15366         prompt("Access Security Pvt")
       
 15367     }
       
 15368     field(PPN, DBF_NOACCESS) {
       
 15369         prompt("pprocessNotify")
       
 15370         extra("struct processNotify *ppn")
       
 15371         special(SPC_NOMOD)
       
 15372         interest(4)
       
 15373     }
       
 15374     field(PPNR, DBF_NOACCESS) {
       
 15375         special(SPC_NOMOD)
       
 15376         interest(4)
       
 15377         extra("struct processNotifyRecord *ppnr")
       
 15378         prompt("pprocessNotifyRecord")
       
 15379     }
       
 15380     field(SPVT, DBF_NOACCESS) {
       
 15381         interest(4)
       
 15382         special(SPC_NOMOD)
       
 15383         prompt("Scan Private")
       
 15384         extra("struct scan_element *spvt")
       
 15385     }
       
 15386     field(RSET, DBF_NOACCESS) {
       
 15387         interest(4)
       
 15388         special(SPC_NOMOD)
       
 15389         prompt("Address of RSET")
       
 15390         extra("struct typed_rset   *rset")
       
 15391     }
       
 15392     field(DSET, DBF_NOACCESS) {
       
 15393         special(SPC_NOMOD)
       
 15394         interest(4)
       
 15395         extra("struct dset         *dset")
       
 15396         prompt("DSET address")
       
 15397     }
       
 15398     field(DPVT, DBF_NOACCESS) {
       
 15399         prompt("Device Private")
       
 15400         extra("void                *dpvt")
       
 15401         special(SPC_NOMOD)
       
 15402         interest(4)
       
 15403     }
       
 15404     field(RDES, DBF_NOACCESS) {
       
 15405         prompt("Address of dbRecordType")
       
 15406         extra("struct dbRecordType *rdes")
       
 15407         special(SPC_NOMOD)
       
 15408         interest(4)
       
 15409     }
       
 15410     field(LSET, DBF_NOACCESS) {
       
 15411         prompt("Lock Set")
       
 15412         extra("struct lockRecord   *lset")
       
 15413         special(SPC_NOMOD)
       
 15414         interest(4)
       
 15415     }
       
 15416     field(PRIO, DBF_MENU) {
       
 15417         prompt("Scheduling Priority")
       
 15418         menu(menuPriority)
       
 15419         interest(1)
       
 15420         special(SPC_SCAN)
       
 15421         promptgroup("20 - Scan")
       
 15422     }
       
 15423     field(TPRO, DBF_UCHAR) {
       
 15424         prompt("Trace Processing")
       
 15425     }
       
 15426     field(BKPT, DBF_NOACCESS) {
       
 15427         special(SPC_NOMOD)
       
 15428         interest(1)
       
 15429         prompt("Break Point")
       
 15430         extra("char                bkpt")
       
 15431     }
       
 15432     field(UDF, DBF_UCHAR) {
       
 15433         interest(1)
       
 15434         pp(TRUE)
       
 15435         promptgroup("10 - Common")
       
 15436         initial("1")
       
 15437         prompt("Undefined")
       
 15438     }
       
 15439     field(UDFS, DBF_MENU) {
       
 15440         initial("INVALID")
       
 15441         prompt("Undefined Alarm Sevrty")
       
 15442         interest(1)
       
 15443         menu(menuAlarmSevr)
       
 15444         promptgroup("70 - Alarm")
       
 15445     }
       
 15446     field(TIME, DBF_NOACCESS) {
       
 15447         special(SPC_NOMOD)
       
 15448         interest(2)
       
 15449         prompt("Time")
       
 15450         extra("epicsTimeStamp      time")
       
 15451     }
       
 15452     field(FLNK, DBF_FWDLINK) {
       
 15453         prompt("Forward Process Link")
       
 15454         promptgroup("20 - Scan")
       
 15455         interest(1)
       
 15456     }
       
 15457     field(VAL, DBF_LONG) {
       
 15458         asl(ASL0)
       
 15459         prompt("Used to trigger")
       
 15460         pp(TRUE)
       
 15461     }
       
 15462     field(SELM, DBF_MENU) {
       
 15463         promptgroup("30 - Action")
       
 15464         menu(fanoutSELM)
       
 15465         interest(1)
       
 15466         prompt("Select Mechanism")
       
 15467     }
       
 15468     field(SELN, DBF_USHORT) {
       
 15469         initial("1")
       
 15470         prompt("Link Selection")
       
 15471         interest(1)
       
 15472     }
       
 15473     field(SELL, DBF_INLINK) {
       
 15474         prompt("Link Selection Loc")
       
 15475         interest(1)
       
 15476         promptgroup("30 - Action")
       
 15477     }
       
 15478     field(OFFS, DBF_SHORT) {
       
 15479         promptgroup("30 - Action")
       
 15480         interest(1)
       
 15481         prompt("Offset for Specified")
       
 15482         initial("0")
       
 15483     }
       
 15484     field(SHFT, DBF_SHORT) {
       
 15485         prompt("Shift for Mask mode")
       
 15486         initial("-1")
       
 15487         promptgroup("30 - Action")
       
 15488         interest(1)
       
 15489     }
       
 15490     field(LNK0, DBF_FWDLINK) {
       
 15491         prompt("Forward Link 0")
       
 15492         interest(1)
       
 15493         promptgroup("51 - Output 0-7")
       
 15494     }
       
 15495     field(LNK1, DBF_FWDLINK) {
       
 15496         prompt("Forward Link 1")
       
 15497         interest(1)
       
 15498         promptgroup("51 - Output 0-7")
       
 15499     }
       
 15500     field(LNK2, DBF_FWDLINK) {
       
 15501         prompt("Forward Link 2")
       
 15502         promptgroup("51 - Output 0-7")
       
 15503         interest(1)
       
 15504     }
       
 15505     field(LNK3, DBF_FWDLINK) {
       
 15506         prompt("Forward Link 3")
       
 15507         interest(1)
       
 15508         promptgroup("51 - Output 0-7")
       
 15509     }
       
 15510     field(LNK4, DBF_FWDLINK) {
       
 15511         prompt("Forward Link 4")
       
 15512         promptgroup("51 - Output 0-7")
       
 15513         interest(1)
       
 15514     }
       
 15515     field(LNK5, DBF_FWDLINK) {
       
 15516         promptgroup("51 - Output 0-7")
       
 15517         interest(1)
       
 15518         prompt("Forward Link 5")
       
 15519     }
       
 15520     field(LNK6, DBF_FWDLINK) {
       
 15521         promptgroup("51 - Output 0-7")
       
 15522         interest(1)
       
 15523         prompt("Forward Link 6")
       
 15524     }
       
 15525     field(LNK7, DBF_FWDLINK) {
       
 15526         prompt("Forward Link 7")
       
 15527         promptgroup("51 - Output 0-7")
       
 15528         interest(1)
       
 15529     }
       
 15530     field(LNK8, DBF_FWDLINK) {
       
 15531         interest(1)
       
 15532         promptgroup("52 - Output 8-F")
       
 15533         prompt("Forward Link 8")
       
 15534     }
       
 15535     field(LNK9, DBF_FWDLINK) {
       
 15536         promptgroup("52 - Output 8-F")
       
 15537         interest(1)
       
 15538         prompt("Forward Link 9")
       
 15539     }
       
 15540     field(LNKA, DBF_FWDLINK) {
       
 15541         interest(1)
       
 15542         promptgroup("52 - Output 8-F")
       
 15543         prompt("Forward Link 10")
       
 15544     }
       
 15545     field(LNKB, DBF_FWDLINK) {
       
 15546         prompt("Forward Link 11")
       
 15547         promptgroup("52 - Output 8-F")
       
 15548         interest(1)
       
 15549     }
       
 15550     field(LNKC, DBF_FWDLINK) {
       
 15551         prompt("Forward Link 12")
       
 15552         promptgroup("52 - Output 8-F")
       
 15553         interest(1)
       
 15554     }
       
 15555     field(LNKD, DBF_FWDLINK) {
       
 15556         promptgroup("52 - Output 8-F")
       
 15557         interest(1)
       
 15558         prompt("Forward Link 13")
       
 15559     }
       
 15560     field(LNKE, DBF_FWDLINK) {
       
 15561         interest(1)
       
 15562         promptgroup("52 - Output 8-F")
       
 15563         prompt("Forward Link 14")
       
 15564     }
       
 15565     field(LNKF, DBF_FWDLINK) {
       
 15566         prompt("Forward Link 15")
       
 15567         promptgroup("52 - Output 8-F")
       
 15568         interest(1)
       
 15569     }
       
 15570 }
       
 15571 recordtype(longin) {
       
 15572     %#include "epicsTypes.h"
       
 15573     %#include "link.h"
       
 15574     %#include "epicsMutex.h"
       
 15575     %#include "ellLib.h"
       
 15576     %#include "epicsTime.h"
       
 15577     %#include "callback.h"
       
 15578     field(NAME, DBF_STRING) {
       
 15579         special(SPC_NOMOD)
       
 15580         size(61)
       
 15581         prompt("Record Name")
       
 15582     }
       
 15583     field(DESC, DBF_STRING) {
       
 15584         prompt("Descriptor")
       
 15585         size(41)
       
 15586         promptgroup("10 - Common")
       
 15587     }
       
 15588     field(ASG, DBF_STRING) {
       
 15589         size(29)
       
 15590         prompt("Access Security Group")
       
 15591         special(SPC_AS)
       
 15592         promptgroup("10 - Common")
       
 15593     }
       
 15594     field(SCAN, DBF_MENU) {
       
 15595         special(SPC_SCAN)
       
 15596         interest(1)
       
 15597         menu(menuScan)
       
 15598         promptgroup("20 - Scan")
       
 15599         prompt("Scan Mechanism")
       
 15600     }
       
 15601     field(PINI, DBF_MENU) {
       
 15602         interest(1)
       
 15603         menu(menuPini)
       
 15604         promptgroup("20 - Scan")
       
 15605         prompt("Process at iocInit")
       
 15606     }
       
 15607     field(PHAS, DBF_SHORT) {
       
 15608         prompt("Scan Phase")
       
 15609         special(SPC_SCAN)
       
 15610         interest(1)
       
 15611         promptgroup("20 - Scan")
       
 15612     }
       
 15613     field(EVNT, DBF_STRING) {
       
 15614         prompt("Event Name")
       
 15615         size(40)
       
 15616         promptgroup("20 - Scan")
       
 15617         special(SPC_SCAN)
       
 15618         interest(1)
       
 15619     }
       
 15620     field(TSE, DBF_SHORT) {
       
 15621         interest(1)
       
 15622         promptgroup("20 - Scan")
       
 15623         prompt("Time Stamp Event")
       
 15624     }
       
 15625     field(TSEL, DBF_INLINK) {
       
 15626         prompt("Time Stamp Link")
       
 15627         promptgroup("20 - Scan")
       
 15628         interest(1)
       
 15629     }
       
 15630     field(DTYP, DBF_DEVICE) {
       
 15631         prompt("Device Type")
       
 15632         promptgroup("10 - Common")
       
 15633         interest(1)
       
 15634     }
       
 15635     field(DISV, DBF_SHORT) {
       
 15636         initial("1")
       
 15637         prompt("Disable Value")
       
 15638         promptgroup("20 - Scan")
       
 15639     }
       
 15640     field(DISA, DBF_SHORT) {
       
 15641         prompt("Disable")
       
 15642     }
       
 15643     field(SDIS, DBF_INLINK) {
       
 15644         prompt("Scanning Disable")
       
 15645         promptgroup("20 - Scan")
       
 15646         interest(1)
       
 15647     }
       
 15648     field(MLOK, DBF_NOACCESS) {
       
 15649         special(SPC_NOMOD)
       
 15650         interest(4)
       
 15651         prompt("Monitor lock")
       
 15652         extra("epicsMutexId        mlok")
       
 15653     }
       
 15654     field(MLIS, DBF_NOACCESS) {
       
 15655         extra("ELLLIST             mlis")
       
 15656         prompt("Monitor List")
       
 15657         special(SPC_NOMOD)
       
 15658         interest(4)
       
 15659     }
       
 15660     field(BKLNK, DBF_NOACCESS) {
       
 15661         special(SPC_NOMOD)
       
 15662         interest(4)
       
 15663         extra("ELLLIST             bklnk")
       
 15664         prompt("Backwards link tracking")
       
 15665     }
       
 15666     field(DISP, DBF_UCHAR) {
       
 15667         prompt("Disable putField")
       
 15668     }
       
 15669     field(PROC, DBF_UCHAR) {
       
 15670         interest(3)
       
 15671         pp(TRUE)
       
 15672         prompt("Force Processing")
       
 15673     }
       
 15674     field(STAT, DBF_MENU) {
       
 15675         prompt("Alarm Status")
       
 15676         initial("UDF")
       
 15677         menu(menuAlarmStat)
       
 15678         special(SPC_NOMOD)
       
 15679     }
       
 15680     field(SEVR, DBF_MENU) {
       
 15681         prompt("Alarm Severity")
       
 15682         special(SPC_NOMOD)
       
 15683         menu(menuAlarmSevr)
       
 15684     }
       
 15685     field(NSTA, DBF_MENU) {
       
 15686         prompt("New Alarm Status")
       
 15687         menu(menuAlarmStat)
       
 15688         interest(2)
       
 15689         special(SPC_NOMOD)
       
 15690     }
       
 15691     field(NSEV, DBF_MENU) {
       
 15692         special(SPC_NOMOD)
       
 15693         interest(2)
       
 15694         menu(menuAlarmSevr)
       
 15695         prompt("New Alarm Severity")
       
 15696     }
       
 15697     field(ACKS, DBF_MENU) {
       
 15698         interest(2)
       
 15699         menu(menuAlarmSevr)
       
 15700         special(SPC_NOMOD)
       
 15701         prompt("Alarm Ack Severity")
       
 15702     }
       
 15703     field(ACKT, DBF_MENU) {
       
 15704         interest(2)
       
 15705         menu(menuYesNo)
       
 15706         special(SPC_NOMOD)
       
 15707         promptgroup("70 - Alarm")
       
 15708         initial("YES")
       
 15709         prompt("Alarm Ack Transient")
       
 15710     }
       
 15711     field(DISS, DBF_MENU) {
       
 15712         promptgroup("70 - Alarm")
       
 15713         menu(menuAlarmSevr)
       
 15714         interest(1)
       
 15715         prompt("Disable Alarm Sevrty")
       
 15716     }
       
 15717     field(LCNT, DBF_UCHAR) {
       
 15718         interest(2)
       
 15719         special(SPC_NOMOD)
       
 15720         prompt("Lock Count")
       
 15721     }
       
 15722     field(PACT, DBF_UCHAR) {
       
 15723         interest(1)
       
 15724         special(SPC_NOMOD)
       
 15725         prompt("Record active")
       
 15726     }
       
 15727     field(PUTF, DBF_UCHAR) {
       
 15728         interest(1)
       
 15729         special(SPC_NOMOD)
       
 15730         prompt("dbPutField process")
       
 15731     }
       
 15732     field(RPRO, DBF_UCHAR) {
       
 15733         interest(1)
       
 15734         special(SPC_NOMOD)
       
 15735         prompt("Reprocess ")
       
 15736     }
       
 15737     field(ASP, DBF_NOACCESS) {
       
 15738         interest(4)
       
 15739         special(SPC_NOMOD)
       
 15740         extra("struct asgMember    *asp")
       
 15741         prompt("Access Security Pvt")
       
 15742     }
       
 15743     field(PPN, DBF_NOACCESS) {
       
 15744         extra("struct processNotify *ppn")
       
 15745         prompt("pprocessNotify")
       
 15746         special(SPC_NOMOD)
       
 15747         interest(4)
       
 15748     }
       
 15749     field(PPNR, DBF_NOACCESS) {
       
 15750         prompt("pprocessNotifyRecord")
       
 15751         extra("struct processNotifyRecord *ppnr")
       
 15752         special(SPC_NOMOD)
       
 15753         interest(4)
       
 15754     }
       
 15755     field(SPVT, DBF_NOACCESS) {
       
 15756         extra("struct scan_element *spvt")
       
 15757         prompt("Scan Private")
       
 15758         special(SPC_NOMOD)
       
 15759         interest(4)
       
 15760     }
       
 15761     field(RSET, DBF_NOACCESS) {
       
 15762         special(SPC_NOMOD)
       
 15763         interest(4)
       
 15764         extra("struct typed_rset   *rset")
       
 15765         prompt("Address of RSET")
       
 15766     }
       
 15767     field(DSET, DBF_NOACCESS) {
       
 15768         special(SPC_NOMOD)
       
 15769         interest(4)
       
 15770         extra("struct dset         *dset")
       
 15771         prompt("DSET address")
       
 15772     }
       
 15773     field(DPVT, DBF_NOACCESS) {
       
 15774         interest(4)
       
 15775         special(SPC_NOMOD)
       
 15776         extra("void                *dpvt")
       
 15777         prompt("Device Private")
       
 15778     }
       
 15779     field(RDES, DBF_NOACCESS) {
       
 15780         interest(4)
       
 15781         special(SPC_NOMOD)
       
 15782         extra("struct dbRecordType *rdes")
       
 15783         prompt("Address of dbRecordType")
       
 15784     }
       
 15785     field(LSET, DBF_NOACCESS) {
       
 15786         special(SPC_NOMOD)
       
 15787         interest(4)
       
 15788         prompt("Lock Set")
       
 15789         extra("struct lockRecord   *lset")
       
 15790     }
       
 15791     field(PRIO, DBF_MENU) {
       
 15792         interest(1)
       
 15793         menu(menuPriority)
       
 15794         special(SPC_SCAN)
       
 15795         promptgroup("20 - Scan")
       
 15796         prompt("Scheduling Priority")
       
 15797     }
       
 15798     field(TPRO, DBF_UCHAR) {
       
 15799         prompt("Trace Processing")
       
 15800     }
       
 15801     field(BKPT, DBF_NOACCESS) {
       
 15802         interest(1)
       
 15803         special(SPC_NOMOD)
       
 15804         prompt("Break Point")
       
 15805         extra("char                bkpt")
       
 15806     }
       
 15807     field(UDF, DBF_UCHAR) {
       
 15808         initial("1")
       
 15809         prompt("Undefined")
       
 15810         interest(1)
       
 15811         promptgroup("10 - Common")
       
 15812         pp(TRUE)
       
 15813     }
       
 15814     field(UDFS, DBF_MENU) {
       
 15815         prompt("Undefined Alarm Sevrty")
       
 15816         initial("INVALID")
       
 15817         promptgroup("70 - Alarm")
       
 15818         interest(1)
       
 15819         menu(menuAlarmSevr)
       
 15820     }
       
 15821     field(TIME, DBF_NOACCESS) {
       
 15822         extra("epicsTimeStamp      time")
       
 15823         prompt("Time")
       
 15824         special(SPC_NOMOD)
       
 15825         interest(2)
       
 15826     }
       
 15827     field(FLNK, DBF_FWDLINK) {
       
 15828         interest(1)
       
 15829         promptgroup("20 - Scan")
       
 15830         prompt("Forward Process Link")
       
 15831     }
       
 15832     field(VAL, DBF_LONG) {
       
 15833         pp(TRUE)
       
 15834         promptgroup("40 - Input")
       
 15835         prompt("Current value")
       
 15836         asl(ASL0)
       
 15837     }
       
 15838     field(INP, DBF_INLINK) {
       
 15839         prompt("Input Specification")
       
 15840         interest(1)
       
 15841         promptgroup("40 - Input")
       
 15842     }
       
 15843     field(EGU, DBF_STRING) {
       
 15844         interest(1)
       
 15845         prop(YES)
       
 15846         promptgroup("80 - Display")
       
 15847         size(16)
       
 15848         prompt("Engineering Units")
       
 15849     }
       
 15850     field(HOPR, DBF_LONG) {
       
 15851         interest(1)
       
 15852         prop(YES)
       
 15853         promptgroup("80 - Display")
       
 15854         prompt("High Operating Range")
       
 15855     }
       
 15856     field(LOPR, DBF_LONG) {
       
 15857         interest(1)
       
 15858         prop(YES)
       
 15859         promptgroup("80 - Display")
       
 15860         prompt("Low Operating Range")
       
 15861     }
       
 15862     field(HIHI, DBF_LONG) {
       
 15863         promptgroup("70 - Alarm")
       
 15864         pp(TRUE)
       
 15865         prop(YES)
       
 15866         interest(1)
       
 15867         prompt("Hihi Alarm Limit")
       
 15868     }
       
 15869     field(LOLO, DBF_LONG) {
       
 15870         pp(TRUE)
       
 15871         promptgroup("70 - Alarm")
       
 15872         prop(YES)
       
 15873         interest(1)
       
 15874         prompt("Lolo Alarm Limit")
       
 15875     }
       
 15876     field(HIGH, DBF_LONG) {
       
 15877         prompt("High Alarm Limit")
       
 15878         promptgroup("70 - Alarm")
       
 15879         pp(TRUE)
       
 15880         interest(1)
       
 15881         prop(YES)
       
 15882     }
       
 15883     field(LOW, DBF_LONG) {
       
 15884         pp(TRUE)
       
 15885         promptgroup("70 - Alarm")
       
 15886         prop(YES)
       
 15887         interest(1)
       
 15888         prompt("Low Alarm Limit")
       
 15889     }
       
 15890     field(HHSV, DBF_MENU) {
       
 15891         promptgroup("70 - Alarm")
       
 15892         pp(TRUE)
       
 15893         menu(menuAlarmSevr)
       
 15894         interest(1)
       
 15895         prompt("Hihi Severity")
       
 15896     }
       
 15897     field(LLSV, DBF_MENU) {
       
 15898         prompt("Lolo Severity")
       
 15899         promptgroup("70 - Alarm")
       
 15900         pp(TRUE)
       
 15901         interest(1)
       
 15902         menu(menuAlarmSevr)
       
 15903     }
       
 15904     field(HSV, DBF_MENU) {
       
 15905         prompt("High Severity")
       
 15906         interest(1)
       
 15907         menu(menuAlarmSevr)
       
 15908         pp(TRUE)
       
 15909         promptgroup("70 - Alarm")
       
 15910     }
       
 15911     field(LSV, DBF_MENU) {
       
 15912         pp(TRUE)
       
 15913         promptgroup("70 - Alarm")
       
 15914         menu(menuAlarmSevr)
       
 15915         interest(1)
       
 15916         prompt("Low Severity")
       
 15917     }
       
 15918     field(HYST, DBF_LONG) {
       
 15919         interest(1)
       
 15920         promptgroup("70 - Alarm")
       
 15921         prompt("Alarm Deadband")
       
 15922     }
       
 15923     field(AFTC, DBF_DOUBLE) {
       
 15924         prompt("Alarm Filter Time Constant")
       
 15925         interest(1)
       
 15926         promptgroup("70 - Alarm")
       
 15927     }
       
 15928     field(AFVL, DBF_DOUBLE) {
       
 15929         prompt("Alarm Filter Value")
       
 15930         interest(3)
       
 15931         special(SPC_NOMOD)
       
 15932     }
       
 15933     field(ADEL, DBF_LONG) {
       
 15934         interest(1)
       
 15935         promptgroup("80 - Display")
       
 15936         prompt("Archive Deadband")
       
 15937     }
       
 15938     field(MDEL, DBF_LONG) {
       
 15939         prompt("Monitor Deadband")
       
 15940         promptgroup("80 - Display")
       
 15941         interest(1)
       
 15942     }
       
 15943     field(LALM, DBF_LONG) {
       
 15944         special(SPC_NOMOD)
       
 15945         interest(3)
       
 15946         prompt("Last Value Alarmed")
       
 15947     }
       
 15948     field(ALST, DBF_LONG) {
       
 15949         prompt("Last Value Archived")
       
 15950         interest(3)
       
 15951         special(SPC_NOMOD)
       
 15952     }
       
 15953     field(MLST, DBF_LONG) {
       
 15954         prompt("Last Val Monitored")
       
 15955         interest(3)
       
 15956         special(SPC_NOMOD)
       
 15957     }
       
 15958     field(SIOL, DBF_INLINK) {
       
 15959         prompt("Simulation Input Link")
       
 15960         promptgroup("90 - Simulate")
       
 15961         interest(1)
       
 15962     }
       
 15963     field(SVAL, DBF_LONG) {
       
 15964         prompt("Simulation Value")
       
 15965     }
       
 15966     field(SIML, DBF_INLINK) {
       
 15967         promptgroup("90 - Simulate")
       
 15968         interest(1)
       
 15969         prompt("Simulation Mode Link")
       
 15970     }
       
 15971     field(SIMM, DBF_MENU) {
       
 15972         special(SPC_MOD)
       
 15973         interest(1)
       
 15974         menu(menuYesNo)
       
 15975         prompt("Simulation Mode")
       
 15976     }
       
 15977     field(SIMS, DBF_MENU) {
       
 15978         promptgroup("90 - Simulate")
       
 15979         menu(menuAlarmSevr)
       
 15980         interest(2)
       
 15981         prompt("Simulation Mode Severity")
       
 15982     }
       
 15983     field(OLDSIMM, DBF_MENU) {
       
 15984         prompt("Prev. Simulation Mode")
       
 15985         menu(menuSimm)
       
 15986         interest(4)
       
 15987         special(SPC_NOMOD)
       
 15988     }
       
 15989     field(SSCN, DBF_MENU) {
       
 15990         promptgroup("90 - Simulate")
       
 15991         interest(1)
       
 15992         menu(menuScan)
       
 15993         prompt("Sim. Mode Scan")
       
 15994         initial("65535")
       
 15995     }
       
 15996     field(SDLY, DBF_DOUBLE) {
       
 15997         initial("-1.0")
       
 15998         prompt("Sim. Mode Async Delay")
       
 15999         interest(2)
       
 16000         promptgroup("90 - Simulate")
       
 16001     }
       
 16002     field(SIMPVT, DBF_NOACCESS) {
       
 16003         extra("CALLBACK            *simpvt")
       
 16004         prompt("Sim. Mode Private")
       
 16005         interest(4)
       
 16006         special(SPC_NOMOD)
       
 16007     }
       
 16008 }
       
 16009 device(longin, CONSTANT, devLiSoft, "Soft Channel")
       
 16010 device(longin, CONSTANT, devLiSoftCallback, "Async Soft Channel")
       
 16011 device(longin, INST_IO, devLiGeneralTime, "General Time")
       
 16012 device(longin, INST_IO, asynLiInt32, "asynInt32")
       
 16013 device(longin, INST_IO, asynLiUInt32Digital, "asynUInt32Digital")
       
 16014 device(longin, INST_IO, devlonginStream, "stream")
       
 16015 device(longin, INST_IO, devLiStrParm, "asyn li stringParm")
       
 16016 recordtype(mbbi) {
       
 16017     %#include "epicsTypes.h"
       
 16018     %#include "link.h"
       
 16019     %#include "epicsMutex.h"
       
 16020     %#include "ellLib.h"
       
 16021     %#include "epicsTime.h"
       
 16022     %#include "callback.h"
       
 16023     field(NAME, DBF_STRING) {
       
 16024         special(SPC_NOMOD)
       
 16025         prompt("Record Name")
       
 16026         size(61)
       
 16027     }
       
 16028     field(DESC, DBF_STRING) {
       
 16029         promptgroup("10 - Common")
       
 16030         size(41)
       
 16031         prompt("Descriptor")
       
 16032     }
       
 16033     field(ASG, DBF_STRING) {
       
 16034         special(SPC_AS)
       
 16035         promptgroup("10 - Common")
       
 16036         size(29)
       
 16037         prompt("Access Security Group")
       
 16038     }
       
 16039     field(SCAN, DBF_MENU) {
       
 16040         prompt("Scan Mechanism")
       
 16041         special(SPC_SCAN)
       
 16042         interest(1)
       
 16043         menu(menuScan)
       
 16044         promptgroup("20 - Scan")
       
 16045     }
       
 16046     field(PINI, DBF_MENU) {
       
 16047         prompt("Process at iocInit")
       
 16048         menu(menuPini)
       
 16049         interest(1)
       
 16050         promptgroup("20 - Scan")
       
 16051     }
       
 16052     field(PHAS, DBF_SHORT) {
       
 16053         prompt("Scan Phase")
       
 16054         promptgroup("20 - Scan")
       
 16055         special(SPC_SCAN)
       
 16056         interest(1)
       
 16057     }
       
 16058     field(EVNT, DBF_STRING) {
       
 16059         promptgroup("20 - Scan")
       
 16060         interest(1)
       
 16061         special(SPC_SCAN)
       
 16062         prompt("Event Name")
       
 16063         size(40)
       
 16064     }
       
 16065     field(TSE, DBF_SHORT) {
       
 16066         promptgroup("20 - Scan")
       
 16067         interest(1)
       
 16068         prompt("Time Stamp Event")
       
 16069     }
       
 16070     field(TSEL, DBF_INLINK) {
       
 16071         promptgroup("20 - Scan")
       
 16072         interest(1)
       
 16073         prompt("Time Stamp Link")
       
 16074     }
       
 16075     field(DTYP, DBF_DEVICE) {
       
 16076         interest(1)
       
 16077         promptgroup("10 - Common")
       
 16078         prompt("Device Type")
       
 16079     }
       
 16080     field(DISV, DBF_SHORT) {
       
 16081         initial("1")
       
 16082         prompt("Disable Value")
       
 16083         promptgroup("20 - Scan")
       
 16084     }
       
 16085     field(DISA, DBF_SHORT) {
       
 16086         prompt("Disable")
       
 16087     }
       
 16088     field(SDIS, DBF_INLINK) {
       
 16089         promptgroup("20 - Scan")
       
 16090         interest(1)
       
 16091         prompt("Scanning Disable")
       
 16092     }
       
 16093     field(MLOK, DBF_NOACCESS) {
       
 16094         extra("epicsMutexId        mlok")
       
 16095         prompt("Monitor lock")
       
 16096         interest(4)
       
 16097         special(SPC_NOMOD)
       
 16098     }
       
 16099     field(MLIS, DBF_NOACCESS) {
       
 16100         special(SPC_NOMOD)
       
 16101         interest(4)
       
 16102         prompt("Monitor List")
       
 16103         extra("ELLLIST             mlis")
       
 16104     }
       
 16105     field(BKLNK, DBF_NOACCESS) {
       
 16106         special(SPC_NOMOD)
       
 16107         interest(4)
       
 16108         prompt("Backwards link tracking")
       
 16109         extra("ELLLIST             bklnk")
       
 16110     }
       
 16111     field(DISP, DBF_UCHAR) {
       
 16112         prompt("Disable putField")
       
 16113     }
       
 16114     field(PROC, DBF_UCHAR) {
       
 16115         interest(3)
       
 16116         pp(TRUE)
       
 16117         prompt("Force Processing")
       
 16118     }
       
 16119     field(STAT, DBF_MENU) {
       
 16120         menu(menuAlarmStat)
       
 16121         special(SPC_NOMOD)
       
 16122         prompt("Alarm Status")
       
 16123         initial("UDF")
       
 16124     }
       
 16125     field(SEVR, DBF_MENU) {
       
 16126         menu(menuAlarmSevr)
       
 16127         special(SPC_NOMOD)
       
 16128         prompt("Alarm Severity")
       
 16129     }
       
 16130     field(NSTA, DBF_MENU) {
       
 16131         prompt("New Alarm Status")
       
 16132         special(SPC_NOMOD)
       
 16133         menu(menuAlarmStat)
       
 16134         interest(2)
       
 16135     }
       
 16136     field(NSEV, DBF_MENU) {
       
 16137         special(SPC_NOMOD)
       
 16138         interest(2)
       
 16139         menu(menuAlarmSevr)
       
 16140         prompt("New Alarm Severity")
       
 16141     }
       
 16142     field(ACKS, DBF_MENU) {
       
 16143         special(SPC_NOMOD)
       
 16144         interest(2)
       
 16145         menu(menuAlarmSevr)
       
 16146         prompt("Alarm Ack Severity")
       
 16147     }
       
 16148     field(ACKT, DBF_MENU) {
       
 16149         initial("YES")
       
 16150         prompt("Alarm Ack Transient")
       
 16151         special(SPC_NOMOD)
       
 16152         interest(2)
       
 16153         menu(menuYesNo)
       
 16154         promptgroup("70 - Alarm")
       
 16155     }
       
 16156     field(DISS, DBF_MENU) {
       
 16157         interest(1)
       
 16158         menu(menuAlarmSevr)
       
 16159         promptgroup("70 - Alarm")
       
 16160         prompt("Disable Alarm Sevrty")
       
 16161     }
       
 16162     field(LCNT, DBF_UCHAR) {
       
 16163         prompt("Lock Count")
       
 16164         special(SPC_NOMOD)
       
 16165         interest(2)
       
 16166     }
       
 16167     field(PACT, DBF_UCHAR) {
       
 16168         prompt("Record active")
       
 16169         special(SPC_NOMOD)
       
 16170         interest(1)
       
 16171     }
       
 16172     field(PUTF, DBF_UCHAR) {
       
 16173         prompt("dbPutField process")
       
 16174         interest(1)
       
 16175         special(SPC_NOMOD)
       
 16176     }
       
 16177     field(RPRO, DBF_UCHAR) {
       
 16178         prompt("Reprocess ")
       
 16179         special(SPC_NOMOD)
       
 16180         interest(1)
       
 16181     }
       
 16182     field(ASP, DBF_NOACCESS) {
       
 16183         interest(4)
       
 16184         special(SPC_NOMOD)
       
 16185         extra("struct asgMember    *asp")
       
 16186         prompt("Access Security Pvt")
       
 16187     }
       
 16188     field(PPN, DBF_NOACCESS) {
       
 16189         prompt("pprocessNotify")
       
 16190         extra("struct processNotify *ppn")
       
 16191         special(SPC_NOMOD)
       
 16192         interest(4)
       
 16193     }
       
 16194     field(PPNR, DBF_NOACCESS) {
       
 16195         extra("struct processNotifyRecord *ppnr")
       
 16196         prompt("pprocessNotifyRecord")
       
 16197         special(SPC_NOMOD)
       
 16198         interest(4)
       
 16199     }
       
 16200     field(SPVT, DBF_NOACCESS) {
       
 16201         special(SPC_NOMOD)
       
 16202         interest(4)
       
 16203         prompt("Scan Private")
       
 16204         extra("struct scan_element *spvt")
       
 16205     }
       
 16206     field(RSET, DBF_NOACCESS) {
       
 16207         interest(4)
       
 16208         special(SPC_NOMOD)
       
 16209         prompt("Address of RSET")
       
 16210         extra("struct typed_rset   *rset")
       
 16211     }
       
 16212     field(DSET, DBF_NOACCESS) {
       
 16213         interest(4)
       
 16214         special(SPC_NOMOD)
       
 16215         prompt("DSET address")
       
 16216         extra("struct dset         *dset")
       
 16217     }
       
 16218     field(DPVT, DBF_NOACCESS) {
       
 16219         prompt("Device Private")
       
 16220         extra("void                *dpvt")
       
 16221         interest(4)
       
 16222         special(SPC_NOMOD)
       
 16223     }
       
 16224     field(RDES, DBF_NOACCESS) {
       
 16225         extra("struct dbRecordType *rdes")
       
 16226         prompt("Address of dbRecordType")
       
 16227         special(SPC_NOMOD)
       
 16228         interest(4)
       
 16229     }
       
 16230     field(LSET, DBF_NOACCESS) {
       
 16231         extra("struct lockRecord   *lset")
       
 16232         prompt("Lock Set")
       
 16233         interest(4)
       
 16234         special(SPC_NOMOD)
       
 16235     }
       
 16236     field(PRIO, DBF_MENU) {
       
 16237         special(SPC_SCAN)
       
 16238         interest(1)
       
 16239         menu(menuPriority)
       
 16240         promptgroup("20 - Scan")
       
 16241         prompt("Scheduling Priority")
       
 16242     }
       
 16243     field(TPRO, DBF_UCHAR) {
       
 16244         prompt("Trace Processing")
       
 16245     }
       
 16246     field(BKPT, DBF_NOACCESS) {
       
 16247         interest(1)
       
 16248         special(SPC_NOMOD)
       
 16249         prompt("Break Point")
       
 16250         extra("char                bkpt")
       
 16251     }
       
 16252     field(UDF, DBF_UCHAR) {
       
 16253         interest(1)
       
 16254         promptgroup("10 - Common")
       
 16255         pp(TRUE)
       
 16256         initial("1")
       
 16257         prompt("Undefined")
       
 16258     }
       
 16259     field(UDFS, DBF_MENU) {
       
 16260         menu(menuAlarmSevr)
       
 16261         interest(1)
       
 16262         promptgroup("70 - Alarm")
       
 16263         initial("INVALID")
       
 16264         prompt("Undefined Alarm Sevrty")
       
 16265     }
       
 16266     field(TIME, DBF_NOACCESS) {
       
 16267         extra("epicsTimeStamp      time")
       
 16268         prompt("Time")
       
 16269         special(SPC_NOMOD)
       
 16270         interest(2)
       
 16271     }
       
 16272     field(FLNK, DBF_FWDLINK) {
       
 16273         prompt("Forward Process Link")
       
 16274         promptgroup("20 - Scan")
       
 16275         interest(1)
       
 16276     }
       
 16277     field(VAL, DBF_ENUM) {
       
 16278         prompt("Current Value")
       
 16279         asl(ASL0)
       
 16280         pp(TRUE)
       
 16281         promptgroup("40 - Input")
       
 16282     }
       
 16283     field(NOBT, DBF_USHORT) {
       
 16284         prompt("Number of Bits")
       
 16285         special(SPC_NOMOD)
       
 16286         interest(1)
       
 16287         promptgroup("40 - Input")
       
 16288     }
       
 16289     field(INP, DBF_INLINK) {
       
 16290         interest(1)
       
 16291         promptgroup("40 - Input")
       
 16292         prompt("Input Specification")
       
 16293     }
       
 16294     field(ZRVL, DBF_ULONG) {
       
 16295         base(HEX)
       
 16296         prompt("Zero Value")
       
 16297         promptgroup("41 - Input 0-7")
       
 16298         pp(TRUE)
       
 16299         interest(1)
       
 16300         special(SPC_MOD)
       
 16301     }
       
 16302     field(ONVL, DBF_ULONG) {
       
 16303         prompt("One Value")
       
 16304         base(HEX)
       
 16305         special(SPC_MOD)
       
 16306         interest(1)
       
 16307         pp(TRUE)
       
 16308         promptgroup("41 - Input 0-7")
       
 16309     }
       
 16310     field(TWVL, DBF_ULONG) {
       
 16311         base(HEX)
       
 16312         prompt("Two Value")
       
 16313         interest(1)
       
 16314         special(SPC_MOD)
       
 16315         pp(TRUE)
       
 16316         promptgroup("41 - Input 0-7")
       
 16317     }
       
 16318     field(THVL, DBF_ULONG) {
       
 16319         base(HEX)
       
 16320         prompt("Three Value")
       
 16321         pp(TRUE)
       
 16322         promptgroup("41 - Input 0-7")
       
 16323         interest(1)
       
 16324         special(SPC_MOD)
       
 16325     }
       
 16326     field(FRVL, DBF_ULONG) {
       
 16327         pp(TRUE)
       
 16328         promptgroup("41 - Input 0-7")
       
 16329         interest(1)
       
 16330         special(SPC_MOD)
       
 16331         base(HEX)
       
 16332         prompt("Four Value")
       
 16333     }
       
 16334     field(FVVL, DBF_ULONG) {
       
 16335         base(HEX)
       
 16336         prompt("Five Value")
       
 16337         interest(1)
       
 16338         special(SPC_MOD)
       
 16339         pp(TRUE)
       
 16340         promptgroup("41 - Input 0-7")
       
 16341     }
       
 16342     field(SXVL, DBF_ULONG) {
       
 16343         prompt("Six Value")
       
 16344         base(HEX)
       
 16345         promptgroup("41 - Input 0-7")
       
 16346         pp(TRUE)
       
 16347         special(SPC_MOD)
       
 16348         interest(1)
       
 16349     }
       
 16350     field(SVVL, DBF_ULONG) {
       
 16351         special(SPC_MOD)
       
 16352         interest(1)
       
 16353         promptgroup("41 - Input 0-7")
       
 16354         pp(TRUE)
       
 16355         prompt("Seven Value")
       
 16356         base(HEX)
       
 16357     }
       
 16358     field(EIVL, DBF_ULONG) {
       
 16359         pp(TRUE)
       
 16360         promptgroup("42 - Input 8-15")
       
 16361         interest(1)
       
 16362         special(SPC_MOD)
       
 16363         base(HEX)
       
 16364         prompt("Eight Value")
       
 16365     }
       
 16366     field(NIVL, DBF_ULONG) {
       
 16367         special(SPC_MOD)
       
 16368         interest(1)
       
 16369         promptgroup("42 - Input 8-15")
       
 16370         pp(TRUE)
       
 16371         prompt("Nine Value")
       
 16372         base(HEX)
       
 16373     }
       
 16374     field(TEVL, DBF_ULONG) {
       
 16375         prompt("Ten Value")
       
 16376         base(HEX)
       
 16377         promptgroup("42 - Input 8-15")
       
 16378         pp(TRUE)
       
 16379         special(SPC_MOD)
       
 16380         interest(1)
       
 16381     }
       
 16382     field(ELVL, DBF_ULONG) {
       
 16383         interest(1)
       
 16384         special(SPC_MOD)
       
 16385         promptgroup("42 - Input 8-15")
       
 16386         pp(TRUE)
       
 16387         base(HEX)
       
 16388         prompt("Eleven Value")
       
 16389     }
       
 16390     field(TVVL, DBF_ULONG) {
       
 16391         prompt("Twelve Value")
       
 16392         base(HEX)
       
 16393         promptgroup("42 - Input 8-15")
       
 16394         pp(TRUE)
       
 16395         special(SPC_MOD)
       
 16396         interest(1)
       
 16397     }
       
 16398     field(TTVL, DBF_ULONG) {
       
 16399         interest(1)
       
 16400         special(SPC_MOD)
       
 16401         pp(TRUE)
       
 16402         promptgroup("42 - Input 8-15")
       
 16403         base(HEX)
       
 16404         prompt("Thirteen Value")
       
 16405     }
       
 16406     field(FTVL, DBF_ULONG) {
       
 16407         base(HEX)
       
 16408         prompt("Fourteen Value")
       
 16409         promptgroup("42 - Input 8-15")
       
 16410         pp(TRUE)
       
 16411         interest(1)
       
 16412         special(SPC_MOD)
       
 16413     }
       
 16414     field(FFVL, DBF_ULONG) {
       
 16415         base(HEX)
       
 16416         prompt("Fifteen Value")
       
 16417         interest(1)
       
 16418         special(SPC_MOD)
       
 16419         promptgroup("42 - Input 8-15")
       
 16420         pp(TRUE)
       
 16421     }
       
 16422     field(ZRST, DBF_STRING) {
       
 16423         special(SPC_MOD)
       
 16424         interest(1)
       
 16425         pp(TRUE)
       
 16426         promptgroup("81 - Display 0-7")
       
 16427         size(26)
       
 16428         prompt("Zero String")
       
 16429     }
       
 16430     field(ONST, DBF_STRING) {
       
 16431         prompt("One String")
       
 16432         size(26)
       
 16433         promptgroup("81 - Display 0-7")
       
 16434         pp(TRUE)
       
 16435         special(SPC_MOD)
       
 16436         interest(1)
       
 16437     }
       
 16438     field(TWST, DBF_STRING) {
       
 16439         special(SPC_MOD)
       
 16440         interest(1)
       
 16441         promptgroup("81 - Display 0-7")
       
 16442         pp(TRUE)
       
 16443         size(26)
       
 16444         prompt("Two String")
       
 16445     }
       
 16446     field(THST, DBF_STRING) {
       
 16447         size(26)
       
 16448         prompt("Three String")
       
 16449         special(SPC_MOD)
       
 16450         interest(1)
       
 16451         pp(TRUE)
       
 16452         promptgroup("81 - Display 0-7")
       
 16453     }
       
 16454     field(FRST, DBF_STRING) {
       
 16455         prompt("Four String")
       
 16456         size(26)
       
 16457         promptgroup("81 - Display 0-7")
       
 16458         pp(TRUE)
       
 16459         interest(1)
       
 16460         special(SPC_MOD)
       
 16461     }
       
 16462     field(FVST, DBF_STRING) {
       
 16463         prompt("Five String")
       
 16464         size(26)
       
 16465         pp(TRUE)
       
 16466         promptgroup("81 - Display 0-7")
       
 16467         interest(1)
       
 16468         special(SPC_MOD)
       
 16469     }
       
 16470     field(SXST, DBF_STRING) {
       
 16471         special(SPC_MOD)
       
 16472         interest(1)
       
 16473         pp(TRUE)
       
 16474         promptgroup("81 - Display 0-7")
       
 16475         size(26)
       
 16476         prompt("Six String")
       
 16477     }
       
 16478     field(SVST, DBF_STRING) {
       
 16479         interest(1)
       
 16480         special(SPC_MOD)
       
 16481         promptgroup("81 - Display 0-7")
       
 16482         pp(TRUE)
       
 16483         size(26)
       
 16484         prompt("Seven String")
       
 16485     }
       
 16486     field(EIST, DBF_STRING) {
       
 16487         pp(TRUE)
       
 16488         promptgroup("82 - Display 8-15")
       
 16489         interest(1)
       
 16490         special(SPC_MOD)
       
 16491         prompt("Eight String")
       
 16492         size(26)
       
 16493     }
       
 16494     field(NIST, DBF_STRING) {
       
 16495         pp(TRUE)
       
 16496         promptgroup("82 - Display 8-15")
       
 16497         interest(1)
       
 16498         special(SPC_MOD)
       
 16499         prompt("Nine String")
       
 16500         size(26)
       
 16501     }
       
 16502     field(TEST, DBF_STRING) {
       
 16503         special(SPC_MOD)
       
 16504         interest(1)
       
 16505         pp(TRUE)
       
 16506         promptgroup("82 - Display 8-15")
       
 16507         size(26)
       
 16508         prompt("Ten String")
       
 16509     }
       
 16510     field(ELST, DBF_STRING) {
       
 16511         size(26)
       
 16512         prompt("Eleven String")
       
 16513         interest(1)
       
 16514         special(SPC_MOD)
       
 16515         promptgroup("82 - Display 8-15")
       
 16516         pp(TRUE)
       
 16517     }
       
 16518     field(TVST, DBF_STRING) {
       
 16519         promptgroup("82 - Display 8-15")
       
 16520         pp(TRUE)
       
 16521         special(SPC_MOD)
       
 16522         interest(1)
       
 16523         prompt("Twelve String")
       
 16524         size(26)
       
 16525     }
       
 16526     field(TTST, DBF_STRING) {
       
 16527         size(26)
       
 16528         prompt("Thirteen String")
       
 16529         special(SPC_MOD)
       
 16530         interest(1)
       
 16531         pp(TRUE)
       
 16532         promptgroup("82 - Display 8-15")
       
 16533     }
       
 16534     field(FTST, DBF_STRING) {
       
 16535         promptgroup("82 - Display 8-15")
       
 16536         pp(TRUE)
       
 16537         interest(1)
       
 16538         special(SPC_MOD)
       
 16539         prompt("Fourteen String")
       
 16540         size(26)
       
 16541     }
       
 16542     field(FFST, DBF_STRING) {
       
 16543         prompt("Fifteen String")
       
 16544         size(26)
       
 16545         pp(TRUE)
       
 16546         promptgroup("82 - Display 8-15")
       
 16547         special(SPC_MOD)
       
 16548         interest(1)
       
 16549     }
       
 16550     field(ZRSV, DBF_MENU) {
       
 16551         promptgroup("71 - Alarm 0-7")
       
 16552         pp(TRUE)
       
 16553         menu(menuAlarmSevr)
       
 16554         interest(1)
       
 16555         prompt("State Zero Severity")
       
 16556     }
       
 16557     field(ONSV, DBF_MENU) {
       
 16558         promptgroup("71 - Alarm 0-7")
       
 16559         pp(TRUE)
       
 16560         menu(menuAlarmSevr)
       
 16561         interest(1)
       
 16562         prompt("State One Severity")
       
 16563     }
       
 16564     field(TWSV, DBF_MENU) {
       
 16565         menu(menuAlarmSevr)
       
 16566         interest(1)
       
 16567         pp(TRUE)
       
 16568         promptgroup("71 - Alarm 0-7")
       
 16569         prompt("State Two Severity")
       
 16570     }
       
 16571     field(THSV, DBF_MENU) {
       
 16572         menu(menuAlarmSevr)
       
 16573         interest(1)
       
 16574         pp(TRUE)
       
 16575         promptgroup("71 - Alarm 0-7")
       
 16576         prompt("State Three Severity")
       
 16577     }
       
 16578     field(FRSV, DBF_MENU) {
       
 16579         promptgroup("71 - Alarm 0-7")
       
 16580         pp(TRUE)
       
 16581         interest(1)
       
 16582         menu(menuAlarmSevr)
       
 16583         prompt("State Four Severity")
       
 16584     }
       
 16585     field(FVSV, DBF_MENU) {
       
 16586         interest(1)
       
 16587         menu(menuAlarmSevr)
       
 16588         pp(TRUE)
       
 16589         promptgroup("71 - Alarm 0-7")
       
 16590         prompt("State Five Severity")
       
 16591     }
       
 16592     field(SXSV, DBF_MENU) {
       
 16593         prompt("State Six Severity")
       
 16594         pp(TRUE)
       
 16595         promptgroup("71 - Alarm 0-7")
       
 16596         interest(1)
       
 16597         menu(menuAlarmSevr)
       
 16598     }
       
 16599     field(SVSV, DBF_MENU) {
       
 16600         menu(menuAlarmSevr)
       
 16601         interest(1)
       
 16602         promptgroup("71 - Alarm 0-7")
       
 16603         pp(TRUE)
       
 16604         prompt("State Seven Severity")
       
 16605     }
       
 16606     field(EISV, DBF_MENU) {
       
 16607         pp(TRUE)
       
 16608         promptgroup("72 - Alarm 8-15")
       
 16609         menu(menuAlarmSevr)
       
 16610         interest(1)
       
 16611         prompt("State Eight Severity")
       
 16612     }
       
 16613     field(NISV, DBF_MENU) {
       
 16614         prompt("State Nine Severity")
       
 16615         menu(menuAlarmSevr)
       
 16616         interest(1)
       
 16617         promptgroup("72 - Alarm 8-15")
       
 16618         pp(TRUE)
       
 16619     }
       
 16620     field(TESV, DBF_MENU) {
       
 16621         interest(1)
       
 16622         menu(menuAlarmSevr)
       
 16623         pp(TRUE)
       
 16624         promptgroup("72 - Alarm 8-15")
       
 16625         prompt("State Ten Severity")
       
 16626     }
       
 16627     field(ELSV, DBF_MENU) {
       
 16628         pp(TRUE)
       
 16629         promptgroup("72 - Alarm 8-15")
       
 16630         interest(1)
       
 16631         menu(menuAlarmSevr)
       
 16632         prompt("State Eleven Severity")
       
 16633     }
       
 16634     field(TVSV, DBF_MENU) {
       
 16635         interest(1)
       
 16636         menu(menuAlarmSevr)
       
 16637         promptgroup("72 - Alarm 8-15")
       
 16638         pp(TRUE)
       
 16639         prompt("State Twelve Severity")
       
 16640     }
       
 16641     field(TTSV, DBF_MENU) {
       
 16642         prompt("State Thirteen Sevr")
       
 16643         promptgroup("72 - Alarm 8-15")
       
 16644         pp(TRUE)
       
 16645         menu(menuAlarmSevr)
       
 16646         interest(1)
       
 16647     }
       
 16648     field(FTSV, DBF_MENU) {
       
 16649         menu(menuAlarmSevr)
       
 16650         interest(1)
       
 16651         pp(TRUE)
       
 16652         promptgroup("72 - Alarm 8-15")
       
 16653         prompt("State Fourteen Sevr")
       
 16654     }
       
 16655     field(FFSV, DBF_MENU) {
       
 16656         prompt("State Fifteen Severity")
       
 16657         interest(1)
       
 16658         menu(menuAlarmSevr)
       
 16659         promptgroup("72 - Alarm 8-15")
       
 16660         pp(TRUE)
       
 16661     }
       
 16662     field(AFTC, DBF_DOUBLE) {
       
 16663         promptgroup("70 - Alarm")
       
 16664         interest(1)
       
 16665         prompt("Alarm Filter Time Constant")
       
 16666     }
       
 16667     field(AFVL, DBF_DOUBLE) {
       
 16668         prompt("Alarm Filter Value")
       
 16669         special(SPC_NOMOD)
       
 16670         interest(3)
       
 16671     }
       
 16672     field(UNSV, DBF_MENU) {
       
 16673         prompt("Unknown State Severity")
       
 16674         interest(1)
       
 16675         menu(menuAlarmSevr)
       
 16676         promptgroup("70 - Alarm")
       
 16677         pp(TRUE)
       
 16678     }
       
 16679     field(COSV, DBF_MENU) {
       
 16680         prompt("Change of State Svr")
       
 16681         menu(menuAlarmSevr)
       
 16682         interest(1)
       
 16683         promptgroup("70 - Alarm")
       
 16684         pp(TRUE)
       
 16685     }
       
 16686     field(RVAL, DBF_ULONG) {
       
 16687         prompt("Raw Value")
       
 16688         pp(TRUE)
       
 16689     }
       
 16690     field(ORAW, DBF_ULONG) {
       
 16691         prompt("Prev Raw Value")
       
 16692         interest(3)
       
 16693         special(SPC_NOMOD)
       
 16694     }
       
 16695     field(MASK, DBF_ULONG) {
       
 16696         special(SPC_NOMOD)
       
 16697         interest(1)
       
 16698         prompt("Hardware Mask")
       
 16699     }
       
 16700     field(MLST, DBF_USHORT) {
       
 16701         prompt("Last Value Monitored")
       
 16702         interest(3)
       
 16703         special(SPC_NOMOD)
       
 16704     }
       
 16705     field(LALM, DBF_USHORT) {
       
 16706         prompt("Last Value Alarmed")
       
 16707         special(SPC_NOMOD)
       
 16708         interest(3)
       
 16709     }
       
 16710     field(SDEF, DBF_SHORT) {
       
 16711         interest(3)
       
 16712         special(SPC_NOMOD)
       
 16713         prompt("States Defined")
       
 16714     }
       
 16715     field(SHFT, DBF_USHORT) {
       
 16716         interest(1)
       
 16717         promptgroup("40 - Input")
       
 16718         prompt("Shift")
       
 16719     }
       
 16720     field(SIOL, DBF_INLINK) {
       
 16721         prompt("Simulation Input Link")
       
 16722         promptgroup("90 - Simulate")
       
 16723         interest(1)
       
 16724     }
       
 16725     field(SVAL, DBF_ULONG) {
       
 16726         prompt("Simulation Value")
       
 16727     }
       
 16728     field(SIML, DBF_INLINK) {
       
 16729         prompt("Simulation Mode Link")
       
 16730         interest(1)
       
 16731         promptgroup("90 - Simulate")
       
 16732     }
       
 16733     field(SIMM, DBF_MENU) {
       
 16734         prompt("Simulation Mode")
       
 16735         interest(1)
       
 16736         menu(menuSimm)
       
 16737         special(SPC_MOD)
       
 16738     }
       
 16739     field(SIMS, DBF_MENU) {
       
 16740         menu(menuAlarmSevr)
       
 16741         interest(2)
       
 16742         promptgroup("90 - Simulate")
       
 16743         prompt("Simulation Mode Severity")
       
 16744     }
       
 16745     field(OLDSIMM, DBF_MENU) {
       
 16746         menu(menuSimm)
       
 16747         interest(4)
       
 16748         special(SPC_NOMOD)
       
 16749         prompt("Prev. Simulation Mode")
       
 16750     }
       
 16751     field(SSCN, DBF_MENU) {
       
 16752         initial("65535")
       
 16753         prompt("Sim. Mode Scan")
       
 16754         interest(1)
       
 16755         menu(menuScan)
       
 16756         promptgroup("90 - Simulate")
       
 16757     }
       
 16758     field(SDLY, DBF_DOUBLE) {
       
 16759         prompt("Sim. Mode Async Delay")
       
 16760         initial("-1.0")
       
 16761         promptgroup("90 - Simulate")
       
 16762         interest(2)
       
 16763     }
       
 16764     field(SIMPVT, DBF_NOACCESS) {
       
 16765         extra("CALLBACK            *simpvt")
       
 16766         prompt("Sim. Mode Private")
       
 16767         interest(4)
       
 16768         special(SPC_NOMOD)
       
 16769     }
       
 16770 }
       
 16771 device(mbbi, CONSTANT, devMbbiSoft, "Soft Channel")
       
 16772 device(mbbi, CONSTANT, devMbbiSoftRaw, "Raw Soft Channel")
       
 16773 device(mbbi, CONSTANT, devMbbiSoftCallback, "Async Soft Channel")
       
 16774 device(mbbi, INST_IO, asynMbbiInt32, "asynInt32")
       
 16775 device(mbbi, INST_IO, asynMbbiUInt32Digital, "asynUInt32Digital")
       
 16776 device(mbbi, INST_IO, devmbbiStream, "stream")
       
 16777 device(mbbi, INST_IO, devCasterMBBIState, "RecCaster")
       
 16778 device(mbbi, INST_IO, devMbbiTPG261, "asyn TPG261")
       
 16779 recordtype(sseq) {
       
 16780     %#include "epicsTypes.h"
       
 16781     %#include "link.h"
       
 16782     %#include "epicsMutex.h"
       
 16783     %#include "ellLib.h"
       
 16784     %#include "epicsTime.h"
       
 16785     field(NAME, DBF_STRING) {
       
 16786         special(SPC_NOMOD)
       
 16787         size(61)
       
 16788         prompt("Record Name")
       
 16789     }
       
 16790     field(DESC, DBF_STRING) {
       
 16791         promptgroup("10 - Common")
       
 16792         prompt("Descriptor")
       
 16793         size(41)
       
 16794     }
       
 16795     field(ASG, DBF_STRING) {
       
 16796         prompt("Access Security Group")
       
 16797         size(29)
       
 16798         promptgroup("10 - Common")
       
 16799         special(SPC_AS)
       
 16800     }
       
 16801     field(SCAN, DBF_MENU) {
       
 16802         promptgroup("20 - Scan")
       
 16803         special(SPC_SCAN)
       
 16804         interest(1)
       
 16805         menu(menuScan)
       
 16806         prompt("Scan Mechanism")
       
 16807     }
       
 16808     field(PINI, DBF_MENU) {
       
 16809         prompt("Process at iocInit")
       
 16810         menu(menuPini)
       
 16811         interest(1)
       
 16812         promptgroup("20 - Scan")
       
 16813     }
       
 16814     field(PHAS, DBF_SHORT) {
       
 16815         prompt("Scan Phase")
       
 16816         promptgroup("20 - Scan")
       
 16817         interest(1)
       
 16818         special(SPC_SCAN)
       
 16819     }
       
 16820     field(EVNT, DBF_STRING) {
       
 16821         size(40)
       
 16822         prompt("Event Name")
       
 16823         special(SPC_SCAN)
       
 16824         interest(1)
       
 16825         promptgroup("20 - Scan")
       
 16826     }
       
 16827     field(TSE, DBF_SHORT) {
       
 16828         interest(1)
       
 16829         promptgroup("20 - Scan")
       
 16830         prompt("Time Stamp Event")
       
 16831     }
       
 16832     field(TSEL, DBF_INLINK) {
       
 16833         prompt("Time Stamp Link")
       
 16834         interest(1)
       
 16835         promptgroup("20 - Scan")
       
 16836     }
       
 16837     field(DTYP, DBF_DEVICE) {
       
 16838         prompt("Device Type")
       
 16839         interest(1)
       
 16840         promptgroup("10 - Common")
       
 16841     }
       
 16842     field(DISV, DBF_SHORT) {
       
 16843         prompt("Disable Value")
       
 16844         initial("1")
       
 16845         promptgroup("20 - Scan")
       
 16846     }
       
 16847     field(DISA, DBF_SHORT) {
       
 16848         prompt("Disable")
       
 16849     }
       
 16850     field(SDIS, DBF_INLINK) {
       
 16851         interest(1)
       
 16852         promptgroup("20 - Scan")
       
 16853         prompt("Scanning Disable")
       
 16854     }
       
 16855     field(MLOK, DBF_NOACCESS) {
       
 16856         prompt("Monitor lock")
       
 16857         extra("epicsMutexId        mlok")
       
 16858         special(SPC_NOMOD)
       
 16859         interest(4)
       
 16860     }
       
 16861     field(MLIS, DBF_NOACCESS) {
       
 16862         prompt("Monitor List")
       
 16863         extra("ELLLIST             mlis")
       
 16864         special(SPC_NOMOD)
       
 16865         interest(4)
       
 16866     }
       
 16867     field(BKLNK, DBF_NOACCESS) {
       
 16868         interest(4)
       
 16869         special(SPC_NOMOD)
       
 16870         extra("ELLLIST             bklnk")
       
 16871         prompt("Backwards link tracking")
       
 16872     }
       
 16873     field(DISP, DBF_UCHAR) {
       
 16874         prompt("Disable putField")
       
 16875     }
       
 16876     field(PROC, DBF_UCHAR) {
       
 16877         interest(3)
       
 16878         pp(TRUE)
       
 16879         prompt("Force Processing")
       
 16880     }
       
 16881     field(STAT, DBF_MENU) {
       
 16882         menu(menuAlarmStat)
       
 16883         special(SPC_NOMOD)
       
 16884         prompt("Alarm Status")
       
 16885         initial("UDF")
       
 16886     }
       
 16887     field(SEVR, DBF_MENU) {
       
 16888         prompt("Alarm Severity")
       
 16889         menu(menuAlarmSevr)
       
 16890         special(SPC_NOMOD)
       
 16891     }
       
 16892     field(NSTA, DBF_MENU) {
       
 16893         prompt("New Alarm Status")
       
 16894         interest(2)
       
 16895         menu(menuAlarmStat)
       
 16896         special(SPC_NOMOD)
       
 16897     }
       
 16898     field(NSEV, DBF_MENU) {
       
 16899         prompt("New Alarm Severity")
       
 16900         menu(menuAlarmSevr)
       
 16901         interest(2)
       
 16902         special(SPC_NOMOD)
       
 16903     }
       
 16904     field(ACKS, DBF_MENU) {
       
 16905         special(SPC_NOMOD)
       
 16906         menu(menuAlarmSevr)
       
 16907         interest(2)
       
 16908         prompt("Alarm Ack Severity")
       
 16909     }
       
 16910     field(ACKT, DBF_MENU) {
       
 16911         prompt("Alarm Ack Transient")
       
 16912         initial("YES")
       
 16913         promptgroup("70 - Alarm")
       
 16914         interest(2)
       
 16915         menu(menuYesNo)
       
 16916         special(SPC_NOMOD)
       
 16917     }
       
 16918     field(DISS, DBF_MENU) {
       
 16919         promptgroup("70 - Alarm")
       
 16920         menu(menuAlarmSevr)
       
 16921         interest(1)
       
 16922         prompt("Disable Alarm Sevrty")
       
 16923     }
       
 16924     field(LCNT, DBF_UCHAR) {
       
 16925         prompt("Lock Count")
       
 16926         interest(2)
       
 16927         special(SPC_NOMOD)
       
 16928     }
       
 16929     field(PACT, DBF_UCHAR) {
       
 16930         interest(1)
       
 16931         special(SPC_NOMOD)
       
 16932         prompt("Record active")
       
 16933     }
       
 16934     field(PUTF, DBF_UCHAR) {
       
 16935         prompt("dbPutField process")
       
 16936         interest(1)
       
 16937         special(SPC_NOMOD)
       
 16938     }
       
 16939     field(RPRO, DBF_UCHAR) {
       
 16940         prompt("Reprocess ")
       
 16941         special(SPC_NOMOD)
       
 16942         interest(1)
       
 16943     }
       
 16944     field(ASP, DBF_NOACCESS) {
       
 16945         prompt("Access Security Pvt")
       
 16946         extra("struct asgMember    *asp")
       
 16947         interest(4)
       
 16948         special(SPC_NOMOD)
       
 16949     }
       
 16950     field(PPN, DBF_NOACCESS) {
       
 16951         special(SPC_NOMOD)
       
 16952         interest(4)
       
 16953         extra("struct processNotify *ppn")
       
 16954         prompt("pprocessNotify")
       
 16955     }
       
 16956     field(PPNR, DBF_NOACCESS) {
       
 16957         interest(4)
       
 16958         special(SPC_NOMOD)
       
 16959         extra("struct processNotifyRecord *ppnr")
       
 16960         prompt("pprocessNotifyRecord")
       
 16961     }
       
 16962     field(SPVT, DBF_NOACCESS) {
       
 16963         prompt("Scan Private")
       
 16964         extra("struct scan_element *spvt")
       
 16965         special(SPC_NOMOD)
       
 16966         interest(4)
       
 16967     }
       
 16968     field(RSET, DBF_NOACCESS) {
       
 16969         prompt("Address of RSET")
       
 16970         extra("struct typed_rset   *rset")
       
 16971         interest(4)
       
 16972         special(SPC_NOMOD)
       
 16973     }
       
 16974     field(DSET, DBF_NOACCESS) {
       
 16975         prompt("DSET address")
       
 16976         extra("struct dset         *dset")
       
 16977         interest(4)
       
 16978         special(SPC_NOMOD)
       
 16979     }
       
 16980     field(DPVT, DBF_NOACCESS) {
       
 16981         prompt("Device Private")
       
 16982         extra("void                *dpvt")
       
 16983         special(SPC_NOMOD)
       
 16984         interest(4)
       
 16985     }
       
 16986     field(RDES, DBF_NOACCESS) {
       
 16987         interest(4)
       
 16988         special(SPC_NOMOD)
       
 16989         extra("struct dbRecordType *rdes")
       
 16990         prompt("Address of dbRecordType")
       
 16991     }
       
 16992     field(LSET, DBF_NOACCESS) {
       
 16993         special(SPC_NOMOD)
       
 16994         interest(4)
       
 16995         prompt("Lock Set")
       
 16996         extra("struct lockRecord   *lset")
       
 16997     }
       
 16998     field(PRIO, DBF_MENU) {
       
 16999         prompt("Scheduling Priority")
       
 17000         promptgroup("20 - Scan")
       
 17001         interest(1)
       
 17002         menu(menuPriority)
       
 17003         special(SPC_SCAN)
       
 17004     }
       
 17005     field(TPRO, DBF_UCHAR) {
       
 17006         prompt("Trace Processing")
       
 17007     }
       
 17008     field(BKPT, DBF_NOACCESS) {
       
 17009         interest(1)
       
 17010         special(SPC_NOMOD)
       
 17011         extra("char                bkpt")
       
 17012         prompt("Break Point")
       
 17013     }
       
 17014     field(UDF, DBF_UCHAR) {
       
 17015         promptgroup("10 - Common")
       
 17016         pp(TRUE)
       
 17017         interest(1)
       
 17018         prompt("Undefined")
       
 17019         initial("1")
       
 17020     }
       
 17021     field(UDFS, DBF_MENU) {
       
 17022         promptgroup("70 - Alarm")
       
 17023         menu(menuAlarmSevr)
       
 17024         interest(1)
       
 17025         prompt("Undefined Alarm Sevrty")
       
 17026         initial("INVALID")
       
 17027     }
       
 17028     field(TIME, DBF_NOACCESS) {
       
 17029         prompt("Time")
       
 17030         extra("epicsTimeStamp      time")
       
 17031         special(SPC_NOMOD)
       
 17032         interest(2)
       
 17033     }
       
 17034     field(FLNK, DBF_FWDLINK) {
       
 17035         prompt("Forward Process Link")
       
 17036         promptgroup("20 - Scan")
       
 17037         interest(1)
       
 17038     }
       
 17039     field(VAL, DBF_LONG) {
       
 17040         pp(TRUE)
       
 17041         prompt("Used to trigger")
       
 17042         asl(ASL0)
       
 17043     }
       
 17044     field(SELM, DBF_MENU) {
       
 17045         prompt("Select Mechanism")
       
 17046         menu(sseqSELM)
       
 17047         interest(1)
       
 17048         promptgroup("40 - Input")
       
 17049     }
       
 17050     field(SELN, DBF_USHORT) {
       
 17051         initial("1")
       
 17052         prompt("Link Selection")
       
 17053         interest(1)
       
 17054     }
       
 17055     field(SELL, DBF_INLINK) {
       
 17056         prompt("Link Selection Loc")
       
 17057         promptgroup("40 - Input")
       
 17058         interest(1)
       
 17059     }
       
 17060     field(PREC, DBF_SHORT) {
       
 17061         prompt("Display Precision")
       
 17062         promptgroup("80 - Display")
       
 17063         interest(1)
       
 17064     }
       
 17065     field(DLY1, DBF_DOUBLE) {
       
 17066         promptgroup("51 - Output (1)")
       
 17067         interest(1)
       
 17068         special(SPC_MOD)
       
 17069         prompt("Delay 1")
       
 17070     }
       
 17071     field(DOL1, DBF_INLINK) {
       
 17072         prompt("Input link1")
       
 17073         interest(1)
       
 17074         special(SPC_MOD)
       
 17075         promptgroup("51 - Output (1)")
       
 17076     }
       
 17077     field(DO1, DBF_DOUBLE) {
       
 17078         prompt("Constant input 1")
       
 17079         promptgroup("51 - Output (1)")
       
 17080         special(SPC_MOD)
       
 17081         interest(1)
       
 17082     }
       
 17083     field(LNK1, DBF_OUTLINK) {
       
 17084         promptgroup("51 - Output (1)")
       
 17085         special(SPC_MOD)
       
 17086         interest(1)
       
 17087         prompt("Output Link 1")
       
 17088     }
       
 17089     field(STR1, DBF_STRING) {
       
 17090         prompt("String value 1")
       
 17091         size(40)
       
 17092         promptgroup("51 - Output (1)")
       
 17093         interest(4)
       
 17094         special(SPC_MOD)
       
 17095     }
       
 17096     field(DT1, DBF_SHORT) {
       
 17097         special(SPC_NOMOD)
       
 17098         interest(4)
       
 17099         prompt("DOL link type")
       
 17100     }
       
 17101     field(LT1, DBF_SHORT) {
       
 17102         prompt("LNK link type")
       
 17103         special(SPC_NOMOD)
       
 17104         interest(4)
       
 17105     }
       
 17106     field(WAIT1, DBF_MENU) {
       
 17107         prompt("Wait for completion?")
       
 17108         menu(sseqWAIT)
       
 17109         interest(1)
       
 17110         special(SPC_MOD)
       
 17111         promptgroup("51 - Output (1)")
       
 17112     }
       
 17113     field(WERR1, DBF_SHORT) {
       
 17114         interest(1)
       
 17115         special(SPC_NOMOD)
       
 17116     }
       
 17117     field(WTG1, DBF_SHORT) {
       
 17118         special(SPC_NOMOD)
       
 17119         interest(1)
       
 17120     }
       
 17121     field(IX1, DBF_SHORT) {
       
 17122         special(SPC_NOMOD)
       
 17123         interest(2)
       
 17124         initial("0")
       
 17125     }
       
 17126     field(DOL1V, DBF_MENU) {
       
 17127         initial("1")
       
 17128         prompt("DOL LINK Status")
       
 17129         interest(1)
       
 17130         menu(sseqLNKV)
       
 17131         special(SPC_NOMOD)
       
 17132     }
       
 17133     field(LNK1V, DBF_MENU) {
       
 17134         special(SPC_NOMOD)
       
 17135         interest(1)
       
 17136         menu(sseqLNKV)
       
 17137         prompt("LNK LINK Status")
       
 17138         initial("1")
       
 17139     }
       
 17140     field(DLY2, DBF_DOUBLE) {
       
 17141         prompt("Delay 2")
       
 17142         promptgroup("51 - Output (1)")
       
 17143         interest(1)
       
 17144         special(SPC_MOD)
       
 17145     }
       
 17146     field(DOL2, DBF_INLINK) {
       
 17147         prompt("Input link 2")
       
 17148         special(SPC_MOD)
       
 17149         interest(1)
       
 17150         promptgroup("51 - Output (1)")
       
 17151     }
       
 17152     field(DO2, DBF_DOUBLE) {
       
 17153         prompt("Constant input 2")
       
 17154         special(SPC_MOD)
       
 17155         interest(1)
       
 17156         promptgroup("51 - Output (1)")
       
 17157     }
       
 17158     field(LNK2, DBF_OUTLINK) {
       
 17159         promptgroup("51 - Output (1)")
       
 17160         interest(1)
       
 17161         special(SPC_MOD)
       
 17162         prompt("Output Link 2")
       
 17163     }
       
 17164     field(STR2, DBF_STRING) {
       
 17165         promptgroup("51 - Output (1)")
       
 17166         interest(4)
       
 17167         special(SPC_MOD)
       
 17168         prompt("String value 2")
       
 17169         size(40)
       
 17170     }
       
 17171     field(DT2, DBF_SHORT) {
       
 17172         special(SPC_NOMOD)
       
 17173         interest(4)
       
 17174         prompt("DOL link type")
       
 17175     }
       
 17176     field(LT2, DBF_SHORT) {
       
 17177         interest(4)
       
 17178         special(SPC_NOMOD)
       
 17179         prompt("LNK link type")
       
 17180     }
       
 17181     field(WAIT2, DBF_MENU) {
       
 17182         prompt("Wait for completion?")
       
 17183         menu(sseqWAIT)
       
 17184         interest(1)
       
 17185         special(SPC_MOD)
       
 17186         promptgroup("51 - Output (1)")
       
 17187     }
       
 17188     field(WERR2, DBF_SHORT) {
       
 17189         special(SPC_NOMOD)
       
 17190         interest(1)
       
 17191     }
       
 17192     field(WTG2, DBF_SHORT) {
       
 17193         interest(1)
       
 17194         special(SPC_NOMOD)
       
 17195     }
       
 17196     field(IX2, DBF_SHORT) {
       
 17197         initial("1")
       
 17198         special(SPC_NOMOD)
       
 17199         interest(2)
       
 17200     }
       
 17201     field(DOL2V, DBF_MENU) {
       
 17202         special(SPC_NOMOD)
       
 17203         menu(sseqLNKV)
       
 17204         interest(1)
       
 17205         initial("1")
       
 17206         prompt("DOL LINK Status")
       
 17207     }
       
 17208     field(LNK2V, DBF_MENU) {
       
 17209         initial("1")
       
 17210         prompt("LNK LINK Status")
       
 17211         special(SPC_NOMOD)
       
 17212         menu(sseqLNKV)
       
 17213         interest(1)
       
 17214     }
       
 17215     field(DLY3, DBF_DOUBLE) {
       
 17216         promptgroup("51 - Output (1)")
       
 17217         special(SPC_MOD)
       
 17218         interest(1)
       
 17219         prompt("Delay 3")
       
 17220     }
       
 17221     field(DOL3, DBF_INLINK) {
       
 17222         prompt("Input link 3")
       
 17223         interest(1)
       
 17224         special(SPC_MOD)
       
 17225         promptgroup("51 - Output (1)")
       
 17226     }
       
 17227     field(DO3, DBF_DOUBLE) {
       
 17228         interest(1)
       
 17229         special(SPC_MOD)
       
 17230         promptgroup("51 - Output (1)")
       
 17231         prompt("Constant input 3")
       
 17232     }
       
 17233     field(LNK3, DBF_OUTLINK) {
       
 17234         promptgroup("51 - Output (1)")
       
 17235         interest(1)
       
 17236         special(SPC_MOD)
       
 17237         prompt("Output Link 3")
       
 17238     }
       
 17239     field(STR3, DBF_STRING) {
       
 17240         prompt("String value 3")
       
 17241         size(40)
       
 17242         promptgroup("51 - Output (1)")
       
 17243         special(SPC_MOD)
       
 17244         interest(4)
       
 17245     }
       
 17246     field(DT3, DBF_SHORT) {
       
 17247         special(SPC_NOMOD)
       
 17248         interest(4)
       
 17249         prompt("DOL link type")
       
 17250     }
       
 17251     field(LT3, DBF_SHORT) {
       
 17252         prompt("LNK link type")
       
 17253         interest(4)
       
 17254         special(SPC_NOMOD)
       
 17255     }
       
 17256     field(WAIT3, DBF_MENU) {
       
 17257         prompt("Wait for completion?")
       
 17258         menu(sseqWAIT)
       
 17259         interest(1)
       
 17260         special(SPC_MOD)
       
 17261         promptgroup("51 - Output (1)")
       
 17262     }
       
 17263     field(WERR3, DBF_SHORT) {
       
 17264         special(SPC_NOMOD)
       
 17265         interest(1)
       
 17266     }
       
 17267     field(WTG3, DBF_SHORT) {
       
 17268         special(SPC_NOMOD)
       
 17269         interest(1)
       
 17270     }
       
 17271     field(IX3, DBF_SHORT) {
       
 17272         interest(2)
       
 17273         special(SPC_NOMOD)
       
 17274         initial("2")
       
 17275     }
       
 17276     field(DOL3V, DBF_MENU) {
       
 17277         special(SPC_NOMOD)
       
 17278         menu(sseqLNKV)
       
 17279         interest(1)
       
 17280         prompt("DOL LINK Status")
       
 17281         initial("1")
       
 17282     }
       
 17283     field(LNK3V, DBF_MENU) {
       
 17284         initial("1")
       
 17285         prompt("LNK LINK Status")
       
 17286         menu(sseqLNKV)
       
 17287         interest(1)
       
 17288         special(SPC_NOMOD)
       
 17289     }
       
 17290     field(DLY4, DBF_DOUBLE) {
       
 17291         interest(1)
       
 17292         special(SPC_MOD)
       
 17293         promptgroup("52 - Output (2)")
       
 17294         prompt("Delay 4")
       
 17295     }
       
 17296     field(DOL4, DBF_INLINK) {
       
 17297         promptgroup("52 - Output (2)")
       
 17298         interest(1)
       
 17299         special(SPC_MOD)
       
 17300         prompt("Input link 4")
       
 17301     }
       
 17302     field(DO4, DBF_DOUBLE) {
       
 17303         promptgroup("51 - Output (1)")
       
 17304         interest(1)
       
 17305         special(SPC_MOD)
       
 17306         prompt("Constant input 4")
       
 17307     }
       
 17308     field(LNK4, DBF_OUTLINK) {
       
 17309         prompt("Output Link 4")
       
 17310         interest(1)
       
 17311         special(SPC_MOD)
       
 17312         promptgroup("52 - Output (2)")
       
 17313     }
       
 17314     field(STR4, DBF_STRING) {
       
 17315         prompt("String value 4")
       
 17316         size(40)
       
 17317         promptgroup("51 - Output (1)")
       
 17318         special(SPC_MOD)
       
 17319         interest(4)
       
 17320     }
       
 17321     field(DT4, DBF_SHORT) {
       
 17322         special(SPC_NOMOD)
       
 17323         interest(4)
       
 17324         prompt("DOL link type")
       
 17325     }
       
 17326     field(LT4, DBF_SHORT) {
       
 17327         interest(4)
       
 17328         special(SPC_NOMOD)
       
 17329         prompt("LNK link type")
       
 17330     }
       
 17331     field(WAIT4, DBF_MENU) {
       
 17332         promptgroup("51 - Output (1)")
       
 17333         special(SPC_MOD)
       
 17334         menu(sseqWAIT)
       
 17335         interest(1)
       
 17336         prompt("Wait for completion?")
       
 17337     }
       
 17338     field(WERR4, DBF_SHORT) {
       
 17339         special(SPC_NOMOD)
       
 17340         interest(1)
       
 17341     }
       
 17342     field(WTG4, DBF_SHORT) {
       
 17343         interest(1)
       
 17344         special(SPC_NOMOD)
       
 17345     }
       
 17346     field(IX4, DBF_SHORT) {
       
 17347         special(SPC_NOMOD)
       
 17348         interest(2)
       
 17349         initial("3")
       
 17350     }
       
 17351     field(DOL4V, DBF_MENU) {
       
 17352         prompt("DOL LINK Status")
       
 17353         initial("1")
       
 17354         interest(1)
       
 17355         menu(sseqLNKV)
       
 17356         special(SPC_NOMOD)
       
 17357     }
       
 17358     field(LNK4V, DBF_MENU) {
       
 17359         prompt("LNK LINK Status")
       
 17360         initial("1")
       
 17361         menu(sseqLNKV)
       
 17362         interest(1)
       
 17363         special(SPC_NOMOD)
       
 17364     }
       
 17365     field(DLY5, DBF_DOUBLE) {
       
 17366         prompt("Delay 5")
       
 17367         promptgroup("52 - Output (2)")
       
 17368         interest(1)
       
 17369         special(SPC_MOD)
       
 17370     }
       
 17371     field(DOL5, DBF_INLINK) {
       
 17372         prompt("Input link 5")
       
 17373         special(SPC_MOD)
       
 17374         interest(1)
       
 17375         promptgroup("52 - Output (2)")
       
 17376     }
       
 17377     field(DO5, DBF_DOUBLE) {
       
 17378         special(SPC_MOD)
       
 17379         interest(1)
       
 17380         promptgroup("51 - Output (1)")
       
 17381         prompt("Constant input 5")
       
 17382     }
       
 17383     field(LNK5, DBF_OUTLINK) {
       
 17384         special(SPC_MOD)
       
 17385         interest(1)
       
 17386         promptgroup("52 - Output (2)")
       
 17387         prompt("Output Link 5")
       
 17388     }
       
 17389     field(STR5, DBF_STRING) {
       
 17390         size(40)
       
 17391         prompt("String value 5")
       
 17392         interest(4)
       
 17393         special(SPC_MOD)
       
 17394         promptgroup("51 - Output (1)")
       
 17395     }
       
 17396     field(DT5, DBF_SHORT) {
       
 17397         prompt("DOL link type")
       
 17398         interest(4)
       
 17399         special(SPC_NOMOD)
       
 17400     }
       
 17401     field(LT5, DBF_SHORT) {
       
 17402         prompt("LNK link type")
       
 17403         interest(4)
       
 17404         special(SPC_NOMOD)
       
 17405     }
       
 17406     field(WAIT5, DBF_MENU) {
       
 17407         prompt("Wait for completion?")
       
 17408         menu(sseqWAIT)
       
 17409         interest(1)
       
 17410         special(SPC_MOD)
       
 17411         promptgroup("51 - Output (1)")
       
 17412     }
       
 17413     field(WERR5, DBF_SHORT) {
       
 17414         interest(1)
       
 17415         special(SPC_NOMOD)
       
 17416     }
       
 17417     field(WTG5, DBF_SHORT) {
       
 17418         interest(1)
       
 17419         special(SPC_NOMOD)
       
 17420     }
       
 17421     field(IX5, DBF_SHORT) {
       
 17422         initial("4")
       
 17423         interest(2)
       
 17424         special(SPC_NOMOD)
       
 17425     }
       
 17426     field(DOL5V, DBF_MENU) {
       
 17427         initial("1")
       
 17428         prompt("DOL LINK Status")
       
 17429         interest(1)
       
 17430         menu(sseqLNKV)
       
 17431         special(SPC_NOMOD)
       
 17432     }
       
 17433     field(LNK5V, DBF_MENU) {
       
 17434         interest(1)
       
 17435         menu(sseqLNKV)
       
 17436         special(SPC_NOMOD)
       
 17437         initial("1")
       
 17438         prompt("LNK LINK Status")
       
 17439     }
       
 17440     field(DLY6, DBF_DOUBLE) {
       
 17441         prompt("Delay 6")
       
 17442         interest(1)
       
 17443         special(SPC_MOD)
       
 17444         promptgroup("52 - Output (2)")
       
 17445     }
       
 17446     field(DOL6, DBF_INLINK) {
       
 17447         interest(1)
       
 17448         special(SPC_MOD)
       
 17449         promptgroup("52 - Output (2)")
       
 17450         prompt("Input link 6")
       
 17451     }
       
 17452     field(DO6, DBF_DOUBLE) {
       
 17453         promptgroup("51 - Output (1)")
       
 17454         interest(1)
       
 17455         special(SPC_MOD)
       
 17456         prompt("Constant input 6")
       
 17457     }
       
 17458     field(LNK6, DBF_OUTLINK) {
       
 17459         prompt("Output Link 6")
       
 17460         promptgroup("52 - Output (2)")
       
 17461         interest(1)
       
 17462         special(SPC_MOD)
       
 17463     }
       
 17464     field(STR6, DBF_STRING) {
       
 17465         interest(4)
       
 17466         special(SPC_MOD)
       
 17467         promptgroup("51 - Output (1)")
       
 17468         size(40)
       
 17469         prompt("String value 6")
       
 17470     }
       
 17471     field(DT6, DBF_SHORT) {
       
 17472         special(SPC_NOMOD)
       
 17473         interest(4)
       
 17474         prompt("DOL link type")
       
 17475     }
       
 17476     field(LT6, DBF_SHORT) {
       
 17477         interest(4)
       
 17478         special(SPC_NOMOD)
       
 17479         prompt("LNK link type")
       
 17480     }
       
 17481     field(WAIT6, DBF_MENU) {
       
 17482         prompt("Wait for completion?")
       
 17483         menu(sseqWAIT)
       
 17484         interest(1)
       
 17485         special(SPC_MOD)
       
 17486         promptgroup("51 - Output (1)")
       
 17487     }
       
 17488     field(WERR6, DBF_SHORT) {
       
 17489         interest(1)
       
 17490         special(SPC_NOMOD)
       
 17491     }
       
 17492     field(WTG6, DBF_SHORT) {
       
 17493         special(SPC_NOMOD)
       
 17494         interest(1)
       
 17495     }
       
 17496     field(IX6, DBF_SHORT) {
       
 17497         interest(2)
       
 17498         special(SPC_NOMOD)
       
 17499         initial("5")
       
 17500     }
       
 17501     field(DOL6V, DBF_MENU) {
       
 17502         special(SPC_NOMOD)
       
 17503         interest(1)
       
 17504         menu(sseqLNKV)
       
 17505         prompt("DOL LINK Status")
       
 17506         initial("1")
       
 17507     }
       
 17508     field(LNK6V, DBF_MENU) {
       
 17509         special(SPC_NOMOD)
       
 17510         menu(sseqLNKV)
       
 17511         interest(1)
       
 17512         initial("1")
       
 17513         prompt("LNK LINK Status")
       
 17514     }
       
 17515     field(DLY7, DBF_DOUBLE) {
       
 17516         prompt("Delay 7")
       
 17517         interest(1)
       
 17518         special(SPC_MOD)
       
 17519         promptgroup("53 - Output (3)")
       
 17520     }
       
 17521     field(DOL7, DBF_INLINK) {
       
 17522         prompt("Input link 7")
       
 17523         promptgroup("53 - Output (3)")
       
 17524         interest(1)
       
 17525         special(SPC_MOD)
       
 17526     }
       
 17527     field(DO7, DBF_DOUBLE) {
       
 17528         interest(1)
       
 17529         special(SPC_MOD)
       
 17530         promptgroup("51 - Output (1)")
       
 17531         prompt("Constant input 7")
       
 17532     }
       
 17533     field(LNK7, DBF_OUTLINK) {
       
 17534         special(SPC_MOD)
       
 17535         interest(1)
       
 17536         promptgroup("53 - Output (3)")
       
 17537         prompt("Output Link 7")
       
 17538     }
       
 17539     field(STR7, DBF_STRING) {
       
 17540         promptgroup("51 - Output (1)")
       
 17541         special(SPC_MOD)
       
 17542         interest(4)
       
 17543         prompt("String value 7")
       
 17544         size(40)
       
 17545     }
       
 17546     field(DT7, DBF_SHORT) {
       
 17547         interest(4)
       
 17548         special(SPC_NOMOD)
       
 17549         prompt("DOL link type")
       
 17550     }
       
 17551     field(LT7, DBF_SHORT) {
       
 17552         interest(4)
       
 17553         special(SPC_NOMOD)
       
 17554         prompt("LNK link type")
       
 17555     }
       
 17556     field(WAIT7, DBF_MENU) {
       
 17557         prompt("Wait for completion?")
       
 17558         promptgroup("51 - Output (1)")
       
 17559         special(SPC_MOD)
       
 17560         interest(1)
       
 17561         menu(sseqWAIT)
       
 17562     }
       
 17563     field(WERR7, DBF_SHORT) {
       
 17564         special(SPC_NOMOD)
       
 17565         interest(1)
       
 17566     }
       
 17567     field(WTG7, DBF_SHORT) {
       
 17568         special(SPC_NOMOD)
       
 17569         interest(1)
       
 17570     }
       
 17571     field(IX7, DBF_SHORT) {
       
 17572         special(SPC_NOMOD)
       
 17573         interest(2)
       
 17574         initial("6")
       
 17575     }
       
 17576     field(DOL7V, DBF_MENU) {
       
 17577         interest(1)
       
 17578         menu(sseqLNKV)
       
 17579         special(SPC_NOMOD)
       
 17580         prompt("DOL LINK Status")
       
 17581         initial("1")
       
 17582     }
       
 17583     field(LNK7V, DBF_MENU) {
       
 17584         menu(sseqLNKV)
       
 17585         interest(1)
       
 17586         special(SPC_NOMOD)
       
 17587         initial("1")
       
 17588         prompt("LNK LINK Status")
       
 17589     }
       
 17590     field(DLY8, DBF_DOUBLE) {
       
 17591         special(SPC_MOD)
       
 17592         interest(1)
       
 17593         promptgroup("53 - Output (3)")
       
 17594         prompt("Delay 8")
       
 17595     }
       
 17596     field(DOL8, DBF_INLINK) {
       
 17597         prompt("Input link 8")
       
 17598         promptgroup("53 - Output (3)")
       
 17599         special(SPC_MOD)
       
 17600         interest(1)
       
 17601     }
       
 17602     field(DO8, DBF_DOUBLE) {
       
 17603         prompt("Constant input 8")
       
 17604         special(SPC_MOD)
       
 17605         interest(1)
       
 17606         promptgroup("51 - Output (1)")
       
 17607     }
       
 17608     field(LNK8, DBF_OUTLINK) {
       
 17609         promptgroup("53 - Output (3)")
       
 17610         special(SPC_MOD)
       
 17611         interest(1)
       
 17612         prompt("Output Link 8")
       
 17613     }
       
 17614     field(STR8, DBF_STRING) {
       
 17615         prompt("String value 8")
       
 17616         size(40)
       
 17617         promptgroup("51 - Output (1)")
       
 17618         interest(4)
       
 17619         special(SPC_MOD)
       
 17620     }
       
 17621     field(DT8, DBF_SHORT) {
       
 17622         prompt("DOL link type")
       
 17623         interest(4)
       
 17624         special(SPC_NOMOD)
       
 17625     }
       
 17626     field(LT8, DBF_SHORT) {
       
 17627         interest(4)
       
 17628         special(SPC_NOMOD)
       
 17629         prompt("LNK link type")
       
 17630     }
       
 17631     field(WAIT8, DBF_MENU) {
       
 17632         prompt("Wait for completion?")
       
 17633         menu(sseqWAIT)
       
 17634         interest(1)
       
 17635         special(SPC_MOD)
       
 17636         promptgroup("51 - Output (1)")
       
 17637     }
       
 17638     field(WERR8, DBF_SHORT) {
       
 17639         interest(1)
       
 17640         special(SPC_NOMOD)
       
 17641     }
       
 17642     field(WTG8, DBF_SHORT) {
       
 17643         interest(1)
       
 17644         special(SPC_NOMOD)
       
 17645     }
       
 17646     field(IX8, DBF_SHORT) {
       
 17647         initial("7")
       
 17648         interest(2)
       
 17649         special(SPC_NOMOD)
       
 17650     }
       
 17651     field(DOL8V, DBF_MENU) {
       
 17652         special(SPC_NOMOD)
       
 17653         menu(sseqLNKV)
       
 17654         interest(1)
       
 17655         prompt("DOL LINK Status")
       
 17656         initial("1")
       
 17657     }
       
 17658     field(LNK8V, DBF_MENU) {
       
 17659         initial("1")
       
 17660         prompt("LNK LINK Status")
       
 17661         special(SPC_NOMOD)
       
 17662         menu(sseqLNKV)
       
 17663         interest(1)
       
 17664     }
       
 17665     field(DLY9, DBF_DOUBLE) {
       
 17666         special(SPC_MOD)
       
 17667         interest(1)
       
 17668         promptgroup("53 - Output (3)")
       
 17669         prompt("Delay 9")
       
 17670     }
       
 17671     field(DOL9, DBF_INLINK) {
       
 17672         interest(1)
       
 17673         special(SPC_MOD)
       
 17674         promptgroup("53 - Output (3)")
       
 17675         prompt("Input link 9")
       
 17676     }
       
 17677     field(DO9, DBF_DOUBLE) {
       
 17678         promptgroup("51 - Output (1)")
       
 17679         special(SPC_MOD)
       
 17680         interest(1)
       
 17681         prompt("Constant input 9")
       
 17682     }
       
 17683     field(LNK9, DBF_OUTLINK) {
       
 17684         prompt("Output Link 9")
       
 17685         special(SPC_MOD)
       
 17686         interest(1)
       
 17687         promptgroup("53 - Output (3)")
       
 17688     }
       
 17689     field(STR9, DBF_STRING) {
       
 17690         promptgroup("51 - Output (1)")
       
 17691         interest(4)
       
 17692         special(SPC_MOD)
       
 17693         prompt("String value 9")
       
 17694         size(40)
       
 17695     }
       
 17696     field(DT9, DBF_SHORT) {
       
 17697         interest(4)
       
 17698         special(SPC_NOMOD)
       
 17699         prompt("DOL link type")
       
 17700     }
       
 17701     field(LT9, DBF_SHORT) {
       
 17702         prompt("LNK link type")
       
 17703         interest(4)
       
 17704         special(SPC_NOMOD)
       
 17705     }
       
 17706     field(WAIT9, DBF_MENU) {
       
 17707         prompt("Wait for completion?")
       
 17708         special(SPC_MOD)
       
 17709         interest(1)
       
 17710         menu(sseqWAIT)
       
 17711         promptgroup("51 - Output (1)")
       
 17712     }
       
 17713     field(WERR9, DBF_SHORT) {
       
 17714         interest(1)
       
 17715         special(SPC_NOMOD)
       
 17716     }
       
 17717     field(WTG9, DBF_SHORT) {
       
 17718         special(SPC_NOMOD)
       
 17719         interest(1)
       
 17720     }
       
 17721     field(IX9, DBF_SHORT) {
       
 17722         initial("8")
       
 17723         special(SPC_NOMOD)
       
 17724         interest(2)
       
 17725     }
       
 17726     field(DOL9V, DBF_MENU) {
       
 17727         initial("1")
       
 17728         prompt("DOL LINK Status")
       
 17729         interest(1)
       
 17730         menu(sseqLNKV)
       
 17731         special(SPC_NOMOD)
       
 17732     }
       
 17733     field(LNK9V, DBF_MENU) {
       
 17734         prompt("LNK LINK Status")
       
 17735         initial("1")
       
 17736         special(SPC_NOMOD)
       
 17737         menu(sseqLNKV)
       
 17738         interest(1)
       
 17739     }
       
 17740     field(DLYA, DBF_DOUBLE) {
       
 17741         promptgroup("53 - Output (3)")
       
 17742         interest(1)
       
 17743         special(SPC_MOD)
       
 17744         prompt("Delay 10")
       
 17745     }
       
 17746     field(DOLA, DBF_INLINK) {
       
 17747         prompt("Input link 10")
       
 17748         interest(1)
       
 17749         special(SPC_MOD)
       
 17750         promptgroup("53 - Output (3)")
       
 17751     }
       
 17752     field(DOA, DBF_DOUBLE) {
       
 17753         prompt("Constant input 10")
       
 17754         promptgroup("51 - Output (1)")
       
 17755         interest(1)
       
 17756         special(SPC_MOD)
       
 17757     }
       
 17758     field(LNKA, DBF_OUTLINK) {
       
 17759         prompt("Output Link 10")
       
 17760         special(SPC_MOD)
       
 17761         interest(1)
       
 17762         promptgroup("53 - Output (3)")
       
 17763     }
       
 17764     field(STRA, DBF_STRING) {
       
 17765         prompt("String value A")
       
 17766         size(40)
       
 17767         promptgroup("51 - Output (1)")
       
 17768         interest(4)
       
 17769         special(SPC_MOD)
       
 17770     }
       
 17771     field(DTA, DBF_SHORT) {
       
 17772         interest(4)
       
 17773         special(SPC_NOMOD)
       
 17774         prompt("DOL link type")
       
 17775     }
       
 17776     field(LTA, DBF_SHORT) {
       
 17777         interest(4)
       
 17778         special(SPC_NOMOD)
       
 17779         prompt("LNK link type")
       
 17780     }
       
 17781     field(WAITA, DBF_MENU) {
       
 17782         prompt("Wait for completion?")
       
 17783         promptgroup("51 - Output (1)")
       
 17784         menu(sseqWAIT)
       
 17785         interest(1)
       
 17786         special(SPC_MOD)
       
 17787     }
       
 17788     field(WERRA, DBF_SHORT) {
       
 17789         special(SPC_NOMOD)
       
 17790         interest(1)
       
 17791     }
       
 17792     field(WTGA, DBF_SHORT) {
       
 17793         interest(1)
       
 17794     }
       
 17795     field(IXA, DBF_SHORT) {
       
 17796         initial("9")
       
 17797         interest(2)
       
 17798     }
       
 17799     field(DOLAV, DBF_MENU) {
       
 17800         initial("1")
       
 17801         prompt("DOL LINK Status")
       
 17802         special(SPC_NOMOD)
       
 17803         menu(sseqLNKV)
       
 17804         interest(1)
       
 17805     }
       
 17806     field(LNKAV, DBF_MENU) {
       
 17807         interest(1)
       
 17808         menu(sseqLNKV)
       
 17809         special(SPC_NOMOD)
       
 17810         initial("1")
       
 17811         prompt("LNK LINK Status")
       
 17812     }
       
 17813     field(ABORT, DBF_SHORT) {
       
 17814         special(SPC_MOD)
       
 17815         interest(1)
       
 17816         prompt("Abort sequence")
       
 17817     }
       
 17818     field(ABORTING, DBF_SHORT) {
       
 17819         prompt("Aborting")
       
 17820         special(SPC_MOD)
       
 17821         interest(1)
       
 17822     }
       
 17823     field(BUSY, DBF_SHORT) {
       
 17824         prompt("Sequence active")
       
 17825         interest(1)
       
 17826         special(SPC_NOMOD)
       
 17827     }
       
 17828 }
       
 17829 recordtype(asyn) {
       
 17830     %#include "epicsTypes.h"
       
 17831     %#include "link.h"
       
 17832     %#include "epicsMutex.h"
       
 17833     %#include "ellLib.h"
       
 17834     %#include "epicsTime.h"
       
 17835     field(NAME, DBF_STRING) {
       
 17836         special(SPC_NOMOD)
       
 17837         prompt("Record Name")
       
 17838         size(61)
       
 17839     }
       
 17840     field(DESC, DBF_STRING) {
       
 17841         promptgroup("10 - Common")
       
 17842         prompt("Descriptor")
       
 17843         size(41)
       
 17844     }
       
 17845     field(ASG, DBF_STRING) {
       
 17846         promptgroup("10 - Common")
       
 17847         special(SPC_AS)
       
 17848         prompt("Access Security Group")
       
 17849         size(29)
       
 17850     }
       
 17851     field(SCAN, DBF_MENU) {
       
 17852         interest(1)
       
 17853         menu(menuScan)
       
 17854         special(SPC_SCAN)
       
 17855         promptgroup("20 - Scan")
       
 17856         prompt("Scan Mechanism")
       
 17857     }
       
 17858     field(PINI, DBF_MENU) {
       
 17859         prompt("Process at iocInit")
       
 17860         interest(1)
       
 17861         menu(menuPini)
       
 17862         promptgroup("20 - Scan")
       
 17863     }
       
 17864     field(PHAS, DBF_SHORT) {
       
 17865         special(SPC_SCAN)
       
 17866         interest(1)
       
 17867         promptgroup("20 - Scan")
       
 17868         prompt("Scan Phase")
       
 17869     }
       
 17870     field(EVNT, DBF_STRING) {
       
 17871         interest(1)
       
 17872         special(SPC_SCAN)
       
 17873         promptgroup("20 - Scan")
       
 17874         size(40)
       
 17875         prompt("Event Name")
       
 17876     }
       
 17877     field(TSE, DBF_SHORT) {
       
 17878         interest(1)
       
 17879         promptgroup("20 - Scan")
       
 17880         prompt("Time Stamp Event")
       
 17881     }
       
 17882     field(TSEL, DBF_INLINK) {
       
 17883         promptgroup("20 - Scan")
       
 17884         interest(1)
       
 17885         prompt("Time Stamp Link")
       
 17886     }
       
 17887     field(DTYP, DBF_DEVICE) {
       
 17888         promptgroup("10 - Common")
       
 17889         interest(1)
       
 17890         prompt("Device Type")
       
 17891     }
       
 17892     field(DISV, DBF_SHORT) {
       
 17893         promptgroup("20 - Scan")
       
 17894         prompt("Disable Value")
       
 17895         initial("1")
       
 17896     }
       
 17897     field(DISA, DBF_SHORT) {
       
 17898         prompt("Disable")
       
 17899     }
       
 17900     field(SDIS, DBF_INLINK) {
       
 17901         prompt("Scanning Disable")
       
 17902         promptgroup("20 - Scan")
       
 17903         interest(1)
       
 17904     }
       
 17905     field(MLOK, DBF_NOACCESS) {
       
 17906         extra("epicsMutexId        mlok")
       
 17907         prompt("Monitor lock")
       
 17908         interest(4)
       
 17909         special(SPC_NOMOD)
       
 17910     }
       
 17911     field(MLIS, DBF_NOACCESS) {
       
 17912         prompt("Monitor List")
       
 17913         extra("ELLLIST             mlis")
       
 17914         interest(4)
       
 17915         special(SPC_NOMOD)
       
 17916     }
       
 17917     field(BKLNK, DBF_NOACCESS) {
       
 17918         special(SPC_NOMOD)
       
 17919         interest(4)
       
 17920         prompt("Backwards link tracking")
       
 17921         extra("ELLLIST             bklnk")
       
 17922     }
       
 17923     field(DISP, DBF_UCHAR) {
       
 17924         prompt("Disable putField")
       
 17925     }
       
 17926     field(PROC, DBF_UCHAR) {
       
 17927         prompt("Force Processing")
       
 17928         interest(3)
       
 17929         pp(TRUE)
       
 17930     }
       
 17931     field(STAT, DBF_MENU) {
       
 17932         prompt("Alarm Status")
       
 17933         initial("UDF")
       
 17934         menu(menuAlarmStat)
       
 17935         special(SPC_NOMOD)
       
 17936     }
       
 17937     field(SEVR, DBF_MENU) {
       
 17938         prompt("Alarm Severity")
       
 17939         menu(menuAlarmSevr)
       
 17940         special(SPC_NOMOD)
       
 17941     }
       
 17942     field(NSTA, DBF_MENU) {
       
 17943         special(SPC_NOMOD)
       
 17944         menu(menuAlarmStat)
       
 17945         interest(2)
       
 17946         prompt("New Alarm Status")
       
 17947     }
       
 17948     field(NSEV, DBF_MENU) {
       
 17949         prompt("New Alarm Severity")
       
 17950         menu(menuAlarmSevr)
       
 17951         interest(2)
       
 17952         special(SPC_NOMOD)
       
 17953     }
       
 17954     field(ACKS, DBF_MENU) {
       
 17955         interest(2)
       
 17956         menu(menuAlarmSevr)
       
 17957         special(SPC_NOMOD)
       
 17958         prompt("Alarm Ack Severity")
       
 17959     }
       
 17960     field(ACKT, DBF_MENU) {
       
 17961         initial("YES")
       
 17962         prompt("Alarm Ack Transient")
       
 17963         interest(2)
       
 17964         menu(menuYesNo)
       
 17965         special(SPC_NOMOD)
       
 17966         promptgroup("70 - Alarm")
       
 17967     }
       
 17968     field(DISS, DBF_MENU) {
       
 17969         interest(1)
       
 17970         menu(menuAlarmSevr)
       
 17971         promptgroup("70 - Alarm")
       
 17972         prompt("Disable Alarm Sevrty")
       
 17973     }
       
 17974     field(LCNT, DBF_UCHAR) {
       
 17975         interest(2)
       
 17976         special(SPC_NOMOD)
       
 17977         prompt("Lock Count")
       
 17978     }
       
 17979     field(PACT, DBF_UCHAR) {
       
 17980         interest(1)
       
 17981         special(SPC_NOMOD)
       
 17982         prompt("Record active")
       
 17983     }
       
 17984     field(PUTF, DBF_UCHAR) {
       
 17985         prompt("dbPutField process")
       
 17986         interest(1)
       
 17987         special(SPC_NOMOD)
       
 17988     }
       
 17989     field(RPRO, DBF_UCHAR) {
       
 17990         interest(1)
       
 17991         special(SPC_NOMOD)
       
 17992         prompt("Reprocess ")
       
 17993     }
       
 17994     field(ASP, DBF_NOACCESS) {
       
 17995         extra("struct asgMember    *asp")
       
 17996         prompt("Access Security Pvt")
       
 17997         special(SPC_NOMOD)
       
 17998         interest(4)
       
 17999     }
       
 18000     field(PPN, DBF_NOACCESS) {
       
 18001         extra("struct processNotify *ppn")
       
 18002         prompt("pprocessNotify")
       
 18003         special(SPC_NOMOD)
       
 18004         interest(4)
       
 18005     }
       
 18006     field(PPNR, DBF_NOACCESS) {
       
 18007         extra("struct processNotifyRecord *ppnr")
       
 18008         prompt("pprocessNotifyRecord")
       
 18009         interest(4)
       
 18010         special(SPC_NOMOD)
       
 18011     }
       
 18012     field(SPVT, DBF_NOACCESS) {
       
 18013         special(SPC_NOMOD)
       
 18014         interest(4)
       
 18015         extra("struct scan_element *spvt")
       
 18016         prompt("Scan Private")
       
 18017     }
       
 18018     field(RSET, DBF_NOACCESS) {
       
 18019         special(SPC_NOMOD)
       
 18020         interest(4)
       
 18021         prompt("Address of RSET")
       
 18022         extra("struct typed_rset   *rset")
       
 18023     }
       
 18024     field(DSET, DBF_NOACCESS) {
       
 18025         prompt("DSET address")
       
 18026         extra("struct dset         *dset")
       
 18027         interest(4)
       
 18028         special(SPC_NOMOD)
       
 18029     }
       
 18030     field(DPVT, DBF_NOACCESS) {
       
 18031         extra("void                *dpvt")
       
 18032         prompt("Device Private")
       
 18033         special(SPC_NOMOD)
       
 18034         interest(4)
       
 18035     }
       
 18036     field(RDES, DBF_NOACCESS) {
       
 18037         prompt("Address of dbRecordType")
       
 18038         extra("struct dbRecordType *rdes")
       
 18039         interest(4)
       
 18040         special(SPC_NOMOD)
       
 18041     }
       
 18042     field(LSET, DBF_NOACCESS) {
       
 18043         special(SPC_NOMOD)
       
 18044         interest(4)
       
 18045         extra("struct lockRecord   *lset")
       
 18046         prompt("Lock Set")
       
 18047     }
       
 18048     field(PRIO, DBF_MENU) {
       
 18049         prompt("Scheduling Priority")
       
 18050         promptgroup("20 - Scan")
       
 18051         menu(menuPriority)
       
 18052         interest(1)
       
 18053         special(SPC_SCAN)
       
 18054     }
       
 18055     field(TPRO, DBF_UCHAR) {
       
 18056         prompt("Trace Processing")
       
 18057     }
       
 18058     field(BKPT, DBF_NOACCESS) {
       
 18059         prompt("Break Point")
       
 18060         extra("char                bkpt")
       
 18061         special(SPC_NOMOD)
       
 18062         interest(1)
       
 18063     }
       
 18064     field(UDF, DBF_UCHAR) {
       
 18065         pp(TRUE)
       
 18066         promptgroup("10 - Common")
       
 18067         interest(1)
       
 18068         prompt("Undefined")
       
 18069         initial("1")
       
 18070     }
       
 18071     field(UDFS, DBF_MENU) {
       
 18072         menu(menuAlarmSevr)
       
 18073         interest(1)
       
 18074         promptgroup("70 - Alarm")
       
 18075         initial("INVALID")
       
 18076         prompt("Undefined Alarm Sevrty")
       
 18077     }
       
 18078     field(TIME, DBF_NOACCESS) {
       
 18079         interest(2)
       
 18080         special(SPC_NOMOD)
       
 18081         prompt("Time")
       
 18082         extra("epicsTimeStamp      time")
       
 18083     }
       
 18084     field(FLNK, DBF_FWDLINK) {
       
 18085         prompt("Forward Process Link")
       
 18086         promptgroup("20 - Scan")
       
 18087         interest(1)
       
 18088     }
       
 18089     field(VAL, DBF_LONG) {
       
 18090         interest(4)
       
 18091         prompt("Value field (unused)")
       
 18092         asl(ASL0)
       
 18093     }
       
 18094     field(PORT, DBF_STRING) {
       
 18095         initial("")
       
 18096         size(40)
       
 18097         prompt("asyn port")
       
 18098         interest(1)
       
 18099         special(SPC_MOD)
       
 18100         promptgroup("40 - Input")
       
 18101     }
       
 18102     field(ADDR, DBF_LONG) {
       
 18103         prompt("asyn address")
       
 18104         initial("0")
       
 18105         promptgroup("40 - Input")
       
 18106         interest(1)
       
 18107         special(SPC_MOD)
       
 18108     }
       
 18109     field(PCNCT, DBF_MENU) {
       
 18110         prompt("Port Connect/Disconnect")
       
 18111         menu(asynCONNECT)
       
 18112         interest(2)
       
 18113         special(SPC_MOD)
       
 18114     }
       
 18115     field(DRVINFO, DBF_STRING) {
       
 18116         initial("")
       
 18117         size(40)
       
 18118         prompt("Driver info string")
       
 18119         interest(2)
       
 18120         special(SPC_MOD)
       
 18121         promptgroup("40 - Input")
       
 18122     }
       
 18123     field(REASON, DBF_LONG) {
       
 18124         interest(2)
       
 18125         special(SPC_MOD)
       
 18126         prompt("asynUser->reason")
       
 18127     }
       
 18128     field(TMOD, DBF_MENU) {
       
 18129         menu(asynTMOD)
       
 18130         interest(1)
       
 18131         promptgroup("40 - Input")
       
 18132         prompt("Transaction mode")
       
 18133     }
       
 18134     field(TMOT, DBF_DOUBLE) {
       
 18135         interest(1)
       
 18136         promptgroup("40 - Input")
       
 18137         initial("1.0")
       
 18138         prompt("Timeout (sec)")
       
 18139     }
       
 18140     field(IFACE, DBF_MENU) {
       
 18141         menu(asynINTERFACE)
       
 18142         interest(2)
       
 18143         special(SPC_MOD)
       
 18144         promptgroup("40 - Input")
       
 18145         prompt("Interface")
       
 18146     }
       
 18147     field(OCTETIV, DBF_LONG) {
       
 18148         prompt("asynOctet is valid")
       
 18149         interest(2)
       
 18150     }
       
 18151     field(OPTIONIV, DBF_LONG) {
       
 18152         interest(2)
       
 18153         prompt("asynOption is valid")
       
 18154     }
       
 18155     field(GPIBIV, DBF_LONG) {
       
 18156         interest(2)
       
 18157         prompt("asynGPIB is valid")
       
 18158     }
       
 18159     field(I32IV, DBF_LONG) {
       
 18160         interest(2)
       
 18161         prompt("asynInt32 is valid")
       
 18162     }
       
 18163     field(UI32IV, DBF_LONG) {
       
 18164         interest(2)
       
 18165         prompt("asynUInt32Digital is valid")
       
 18166     }
       
 18167     field(F64IV, DBF_LONG) {
       
 18168         prompt("asynFloat64 is valid")
       
 18169         interest(2)
       
 18170     }
       
 18171     field(AOUT, DBF_STRING) {
       
 18172         promptgroup("50 - Output")
       
 18173         pp(TRUE)
       
 18174         interest(1)
       
 18175         prompt("Output (command) string")
       
 18176         size(40)
       
 18177     }
       
 18178     field(OEOS, DBF_STRING) {
       
 18179         special(SPC_MOD)
       
 18180         interest(1)
       
 18181         promptgroup("50 - Output")
       
 18182         size(40)
       
 18183         prompt("Output delimiter")
       
 18184     }
       
 18185     field(BOUT, DBF_CHAR) {
       
 18186         pp(TRUE)
       
 18187         special(SPC_DBADDR)
       
 18188         interest(1)
       
 18189         prompt("Output binary data")
       
 18190     }
       
 18191     field(OPTR, DBF_NOACCESS) {
       
 18192         prompt("Output buffer pointer")
       
 18193         extra("void *optr")
       
 18194         interest(4)
       
 18195         special(SPC_NOMOD)
       
 18196     }
       
 18197     field(OMAX, DBF_LONG) {
       
 18198         prompt("Max. size of output array")
       
 18199         initial("80")
       
 18200         promptgroup("50 - Output")
       
 18201         special(SPC_NOMOD)
       
 18202         interest(1)
       
 18203     }
       
 18204     field(NOWT, DBF_LONG) {
       
 18205         interest(1)
       
 18206         promptgroup("50 - Output")
       
 18207         initial("80")
       
 18208         prompt("Number of bytes to write")
       
 18209     }
       
 18210     field(NAWT, DBF_LONG) {
       
 18211         interest(1)
       
 18212         prompt("Number of bytes actually written")
       
 18213     }
       
 18214     field(OFMT, DBF_MENU) {
       
 18215         prompt("Output format")
       
 18216         promptgroup("50 - Output")
       
 18217         menu(asynFMT)
       
 18218         interest(1)
       
 18219     }
       
 18220     field(AINP, DBF_STRING) {
       
 18221         special(SPC_NOMOD)
       
 18222         interest(1)
       
 18223         prompt("Input (response) string")
       
 18224         size(40)
       
 18225     }
       
 18226     field(TINP, DBF_STRING) {
       
 18227         size(40)
       
 18228         asl(ASL0)
       
 18229         prompt("Translated input string")
       
 18230         special(SPC_NOMOD)
       
 18231         interest(1)
       
 18232     }
       
 18233     field(IEOS, DBF_STRING) {
       
 18234         special(SPC_MOD)
       
 18235         interest(1)
       
 18236         promptgroup("40 - Input")
       
 18237         size(40)
       
 18238         prompt("Input Delimiter")
       
 18239     }
       
 18240     field(BINP, DBF_CHAR) {
       
 18241         special(SPC_DBADDR)
       
 18242         prompt("Input binary data")
       
 18243         asl(ASL0)
       
 18244     }
       
 18245     field(IPTR, DBF_NOACCESS) {
       
 18246         extra("void *iptr")
       
 18247         size(4)
       
 18248         prompt("Input buffer pointer")
       
 18249         special(SPC_NOMOD)
       
 18250         interest(4)
       
 18251     }
       
 18252     field(IMAX, DBF_LONG) {
       
 18253         promptgroup("40 - Input")
       
 18254         interest(1)
       
 18255         special(SPC_NOMOD)
       
 18256         prompt("Max. size of input array")
       
 18257         initial("80")
       
 18258     }
       
 18259     field(NRRD, DBF_LONG) {
       
 18260         interest(1)
       
 18261         promptgroup("40 - Input")
       
 18262         prompt("Number of bytes to read")
       
 18263     }
       
 18264     field(NORD, DBF_LONG) {
       
 18265         prompt("Number of bytes read")
       
 18266         special(SPC_NOMOD)
       
 18267         interest(1)
       
 18268     }
       
 18269     field(IFMT, DBF_MENU) {
       
 18270         interest(1)
       
 18271         menu(asynFMT)
       
 18272         promptgroup("40 - Input")
       
 18273         prompt("Input format")
       
 18274     }
       
 18275     field(EOMR, DBF_MENU) {
       
 18276         prompt("EOM reason")
       
 18277         special(SPC_NOMOD)
       
 18278         menu(asynEOMREASON)
       
 18279         interest(1)
       
 18280     }
       
 18281     field(I32INP, DBF_LONG) {
       
 18282         prompt("asynInt32 input")
       
 18283         special(SPC_NOMOD)
       
 18284         interest(2)
       
 18285     }
       
 18286     field(I32OUT, DBF_LONG) {
       
 18287         interest(2)
       
 18288         promptgroup("50 - Output")
       
 18289         pp(TRUE)
       
 18290         prompt("asynInt32 output")
       
 18291     }
       
 18292     field(UI32INP, DBF_ULONG) {
       
 18293         interest(2)
       
 18294         special(SPC_NOMOD)
       
 18295         prompt("asynUInt32Digital input")
       
 18296     }
       
 18297     field(UI32OUT, DBF_ULONG) {
       
 18298         prompt("asynUInt32Digital output")
       
 18299         pp(TRUE)
       
 18300         promptgroup("50 - Output")
       
 18301         interest(2)
       
 18302     }
       
 18303     field(UI32MASK, DBF_ULONG) {
       
 18304         interest(2)
       
 18305         special(SPC_MOD)
       
 18306         promptgroup("50 - Output")
       
 18307         initial("0xffffffff")
       
 18308         prompt("asynUInt32Digital mask")
       
 18309     }
       
 18310     field(F64INP, DBF_DOUBLE) {
       
 18311         special(SPC_NOMOD)
       
 18312         interest(2)
       
 18313         prompt("asynFloat64 input")
       
 18314     }
       
 18315     field(F64OUT, DBF_DOUBLE) {
       
 18316         prompt("asynFloat64 output")
       
 18317         interest(2)
       
 18318         promptgroup("50 - Output")
       
 18319         pp(TRUE)
       
 18320     }
       
 18321     field(BAUD, DBF_MENU) {
       
 18322         prompt("Baud rate")
       
 18323         promptgroup("40 - Input")
       
 18324         special(SPC_MOD)
       
 18325         interest(2)
       
 18326         menu(serialBAUD)
       
 18327     }
       
 18328     field(LBAUD, DBF_LONG) {
       
 18329         special(SPC_MOD)
       
 18330         interest(2)
       
 18331         promptgroup("40 - Input")
       
 18332         prompt("Baud rate")
       
 18333     }
       
 18334     field(PRTY, DBF_MENU) {
       
 18335         prompt("Parity")
       
 18336         special(SPC_MOD)
       
 18337         menu(serialPRTY)
       
 18338         interest(2)
       
 18339         promptgroup("40 - Input")
       
 18340     }
       
 18341     field(DBIT, DBF_MENU) {
       
 18342         special(SPC_MOD)
       
 18343         menu(serialDBIT)
       
 18344         interest(2)
       
 18345         promptgroup("40 - Input")
       
 18346         prompt("Data bits")
       
 18347     }
       
 18348     field(SBIT, DBF_MENU) {
       
 18349         special(SPC_MOD)
       
 18350         interest(2)
       
 18351         menu(serialSBIT)
       
 18352         promptgroup("40 - Input")
       
 18353         prompt("Stop bits")
       
 18354     }
       
 18355     field(MCTL, DBF_MENU) {
       
 18356         prompt("Modem control")
       
 18357         special(SPC_MOD)
       
 18358         interest(2)
       
 18359         menu(serialMCTL)
       
 18360         promptgroup("40 - Input")
       
 18361     }
       
 18362     field(FCTL, DBF_MENU) {
       
 18363         prompt("Flow control")
       
 18364         promptgroup("40 - Input")
       
 18365         special(SPC_MOD)
       
 18366         interest(2)
       
 18367         menu(serialFCTL)
       
 18368     }
       
 18369     field(IXON, DBF_MENU) {
       
 18370         special(SPC_MOD)
       
 18371         interest(2)
       
 18372         menu(serialIX)
       
 18373         promptgroup("40 - Input")
       
 18374         prompt("Output XON/XOFF")
       
 18375     }
       
 18376     field(IXOFF, DBF_MENU) {
       
 18377         promptgroup("40 - Input")
       
 18378         interest(2)
       
 18379         menu(serialIX)
       
 18380         special(SPC_MOD)
       
 18381         prompt("Input XON/XOFF")
       
 18382     }
       
 18383     field(IXANY, DBF_MENU) {
       
 18384         special(SPC_MOD)
       
 18385         menu(serialIX)
       
 18386         interest(2)
       
 18387         promptgroup("40 - Input")
       
 18388         prompt("XON=any character")
       
 18389     }
       
 18390     field(HOSTINFO, DBF_STRING) {
       
 18391         promptgroup("40 - Input")
       
 18392         interest(1)
       
 18393         special(SPC_MOD)
       
 18394         prompt("host info")
       
 18395         initial("")
       
 18396         size(40)
       
 18397     }
       
 18398     field(DRTO, DBF_MENU) {
       
 18399         promptgroup("40 - Input")
       
 18400         interest(2)
       
 18401         menu(ipDRTO)
       
 18402         special(SPC_MOD)
       
 18403         prompt("Disconnect on timeout")
       
 18404     }
       
 18405     field(UCMD, DBF_MENU) {
       
 18406         prompt("Universal command")
       
 18407         pp(TRUE)
       
 18408         promptgroup("50 - Output")
       
 18409         menu(gpibUCMD)
       
 18410         interest(2)
       
 18411     }
       
 18412     field(ACMD, DBF_MENU) {
       
 18413         prompt("Addressed command")
       
 18414         interest(2)
       
 18415         menu(gpibACMD)
       
 18416         pp(TRUE)
       
 18417         promptgroup("50 - Output")
       
 18418     }
       
 18419     field(SPR, DBF_UCHAR) {
       
 18420         special(SPC_NOMOD)
       
 18421         interest(2)
       
 18422         prompt("Serial poll response")
       
 18423     }
       
 18424     field(TMSK, DBF_LONG) {
       
 18425         interest(1)
       
 18426         special(SPC_MOD)
       
 18427         promptgroup("80 - Display")
       
 18428         prompt("Trace mask")
       
 18429     }
       
 18430     field(TB0, DBF_MENU) {
       
 18431         prompt("Trace error")
       
 18432         special(SPC_MOD)
       
 18433         menu(asynTRACE)
       
 18434         interest(1)
       
 18435         promptgroup("80 - Display")
       
 18436     }
       
 18437     field(TB1, DBF_MENU) {
       
 18438         prompt("Trace IO device")
       
 18439         promptgroup("80 - Display")
       
 18440         special(SPC_MOD)
       
 18441         menu(asynTRACE)
       
 18442         interest(1)
       
 18443     }
       
 18444     field(TB2, DBF_MENU) {
       
 18445         promptgroup("80 - Display")
       
 18446         special(SPC_MOD)
       
 18447         interest(1)
       
 18448         menu(asynTRACE)
       
 18449         prompt("Trace IO filter")
       
 18450     }
       
 18451     field(TB3, DBF_MENU) {
       
 18452         special(SPC_MOD)
       
 18453         menu(asynTRACE)
       
 18454         interest(1)
       
 18455         promptgroup("80 - Display")
       
 18456         prompt("Trace IO driver")
       
 18457     }
       
 18458     field(TB4, DBF_MENU) {
       
 18459         special(SPC_MOD)
       
 18460         interest(1)
       
 18461         menu(asynTRACE)
       
 18462         promptgroup("80 - Display")
       
 18463         prompt("Trace flow")
       
 18464     }
       
 18465     field(TB5, DBF_MENU) {
       
 18466         promptgroup("80 - Display")
       
 18467         special(SPC_MOD)
       
 18468         interest(1)
       
 18469         menu(asynTRACE)
       
 18470         prompt("Trace warning")
       
 18471     }
       
 18472     field(TIOM, DBF_LONG) {
       
 18473         promptgroup("80 - Display")
       
 18474         interest(1)
       
 18475         special(SPC_MOD)
       
 18476         prompt("Trace I/O mask")
       
 18477     }
       
 18478     field(TIB0, DBF_MENU) {
       
 18479         prompt("Trace IO ASCII")
       
 18480         promptgroup("80 - Display")
       
 18481         interest(1)
       
 18482         menu(asynTRACE)
       
 18483         special(SPC_MOD)
       
 18484     }
       
 18485     field(TIB1, DBF_MENU) {
       
 18486         menu(asynTRACE)
       
 18487         interest(1)
       
 18488         special(SPC_MOD)
       
 18489         promptgroup("80 - Display")
       
 18490         prompt("Trace IO escape")
       
 18491     }
       
 18492     field(TIB2, DBF_MENU) {
       
 18493         prompt("Trace IO hex")
       
 18494         special(SPC_MOD)
       
 18495         interest(1)
       
 18496         menu(asynTRACE)
       
 18497         promptgroup("80 - Display")
       
 18498     }
       
 18499     field(TINM, DBF_LONG) {
       
 18500         prompt("Trace Info mask")
       
 18501         promptgroup("80 - Display")
       
 18502         special(SPC_MOD)
       
 18503         interest(1)
       
 18504     }
       
 18505     field(TINB0, DBF_MENU) {
       
 18506         prompt("Trace Info Time")
       
 18507         promptgroup("80 - Display")
       
 18508         special(SPC_MOD)
       
 18509         interest(1)
       
 18510         menu(asynTRACE)
       
 18511     }
       
 18512     field(TINB1, DBF_MENU) {
       
 18513         promptgroup("80 - Display")
       
 18514         interest(1)
       
 18515         menu(asynTRACE)
       
 18516         special(SPC_MOD)
       
 18517         prompt("Trace Info Port")
       
 18518     }
       
 18519     field(TINB2, DBF_MENU) {
       
 18520         promptgroup("80 - Display")
       
 18521         special(SPC_MOD)
       
 18522         interest(1)
       
 18523         menu(asynTRACE)
       
 18524         prompt("Trace Info Source")
       
 18525     }
       
 18526     field(TINB3, DBF_MENU) {
       
 18527         promptgroup("80 - Display")
       
 18528         menu(asynTRACE)
       
 18529         interest(1)
       
 18530         special(SPC_MOD)
       
 18531         prompt("Trace Info Thread")
       
 18532     }
       
 18533     field(TSIZ, DBF_LONG) {
       
 18534         prompt("Trace IO truncate size")
       
 18535         promptgroup("80 - Display")
       
 18536         special(SPC_MOD)
       
 18537         interest(1)
       
 18538     }
       
 18539     field(TFIL, DBF_STRING) {
       
 18540         size(40)
       
 18541         prompt("Trace IO file")
       
 18542         special(SPC_MOD)
       
 18543         interest(1)
       
 18544         promptgroup("80 - Display")
       
 18545     }
       
 18546     field(AUCT, DBF_MENU) {
       
 18547         prompt("Autoconnect")
       
 18548         special(SPC_MOD)
       
 18549         interest(1)
       
 18550         menu(asynAUTOCONNECT)
       
 18551         promptgroup("40 - Input")
       
 18552     }
       
 18553     field(CNCT, DBF_MENU) {
       
 18554         interest(1)
       
 18555         menu(asynCONNECT)
       
 18556         special(SPC_MOD)
       
 18557         promptgroup("40 - Input")
       
 18558         prompt("Connect/Disconnect")
       
 18559     }
       
 18560     field(ENBL, DBF_MENU) {
       
 18561         promptgroup("40 - Input")
       
 18562         menu(asynENABLE)
       
 18563         interest(1)
       
 18564         special(SPC_MOD)
       
 18565         prompt("Enable/Disable")
       
 18566     }
       
 18567     field(ERRS, DBF_NOACCESS) {
       
 18568         special(SPC_DBADDR)
       
 18569         interest(4)
       
 18570         extra("char *errs")
       
 18571         prompt("Error string")
       
 18572     }
       
 18573     field(AQR, DBF_UCHAR) {
       
 18574         prompt("Abort queueRequest")
       
 18575         special(SPC_MOD)
       
 18576         interest(4)
       
 18577     }
       
 18578 }
       
 18579 device(asyn, INST_IO, asynRecordDevice, "asynRecordDevice")
       
 18580 recordtype(int64in) {
 10566     %#include "epicsTypes.h"
 18581     %#include "epicsTypes.h"
 10567     %#include "link.h"
 18582     %#include "link.h"
 10568     %#include "epicsMutex.h"
 18583     %#include "epicsMutex.h"
 10569     %#include "ellLib.h"
 18584     %#include "ellLib.h"
 10570     %#include "epicsTime.h"
 18585     %#include "epicsTime.h"
 10578         promptgroup("10 - Common")
 18593         promptgroup("10 - Common")
 10579         prompt("Descriptor")
 18594         prompt("Descriptor")
 10580         size(41)
 18595         size(41)
 10581     }
 18596     }
 10582     field(ASG, DBF_STRING) {
 18597     field(ASG, DBF_STRING) {
 10583         promptgroup("10 - Common")
 18598         size(29)
       
 18599         prompt("Access Security Group")
 10584         special(SPC_AS)
 18600         special(SPC_AS)
 10585         prompt("Access Security Group")
 18601         promptgroup("10 - Common")
 10586         size(29)
       
 10587     }
 18602     }
 10588     field(SCAN, DBF_MENU) {
 18603     field(SCAN, DBF_MENU) {
       
 18604         promptgroup("20 - Scan")
       
 18605         special(SPC_SCAN)
       
 18606         interest(1)
       
 18607         menu(menuScan)
 10589         prompt("Scan Mechanism")
 18608         prompt("Scan Mechanism")
 10590         interest(1)
       
 10591         special(SPC_SCAN)
       
 10592         promptgroup("20 - Scan")
       
 10593         menu(menuScan)
       
 10594     }
 18609     }
 10595     field(PINI, DBF_MENU) {
 18610     field(PINI, DBF_MENU) {
 10596         menu(menuPini)
 18611         menu(menuPini)
 10597         interest(1)
 18612         interest(1)
 10598         promptgroup("20 - Scan")
 18613         promptgroup("20 - Scan")
 10599         prompt("Process at iocInit")
 18614         prompt("Process at iocInit")
 10600     }
 18615     }
 10601     field(PHAS, DBF_SHORT) {
 18616     field(PHAS, DBF_SHORT) {
       
 18617         special(SPC_SCAN)
       
 18618         interest(1)
       
 18619         promptgroup("20 - Scan")
 10602         prompt("Scan Phase")
 18620         prompt("Scan Phase")
 10603         promptgroup("20 - Scan")
       
 10604         interest(1)
       
 10605         special(SPC_SCAN)
       
 10606     }
 18621     }
 10607     field(EVNT, DBF_STRING) {
 18622     field(EVNT, DBF_STRING) {
 10608         size(40)
 18623         size(40)
 10609         prompt("Event Name")
 18624         prompt("Event Name")
 10610         interest(1)
 18625         interest(1)
 10621         promptgroup("20 - Scan")
 18636         promptgroup("20 - Scan")
 10622         interest(1)
 18637         interest(1)
 10623     }
 18638     }
 10624     field(DTYP, DBF_DEVICE) {
 18639     field(DTYP, DBF_DEVICE) {
 10625         prompt("Device Type")
 18640         prompt("Device Type")
 10626         interest(1)
 18641         promptgroup("10 - Common")
 10627         promptgroup("10 - Common")
 18642         interest(1)
 10628     }
 18643     }
 10629     field(DISV, DBF_SHORT) {
 18644     field(DISV, DBF_SHORT) {
 10630         initial("1")
 18645         initial("1")
 10631         prompt("Disable Value")
 18646         prompt("Disable Value")
 10632         promptgroup("20 - Scan")
 18647         promptgroup("20 - Scan")
 10633     }
 18648     }
 10634     field(DISA, DBF_SHORT) {
 18649     field(DISA, DBF_SHORT) {
 10635         prompt("Disable")
 18650         prompt("Disable")
 10636     }
 18651     }
 10637     field(SDIS, DBF_INLINK) {
 18652     field(SDIS, DBF_INLINK) {
 10638         interest(1)
       
 10639         promptgroup("20 - Scan")
       
 10640         prompt("Scanning Disable")
 18653         prompt("Scanning Disable")
       
 18654         promptgroup("20 - Scan")
       
 18655         interest(1)
 10641     }
 18656     }
 10642     field(MLOK, DBF_NOACCESS) {
 18657     field(MLOK, DBF_NOACCESS) {
 10643         extra("epicsMutexId        mlok")
 18658         extra("epicsMutexId        mlok")
 10644         special(SPC_NOMOD)
       
 10645         interest(4)
       
 10646         prompt("Monitor lock")
 18659         prompt("Monitor lock")
       
 18660         interest(4)
       
 18661         special(SPC_NOMOD)
 10647     }
 18662     }
 10648     field(MLIS, DBF_NOACCESS) {
 18663     field(MLIS, DBF_NOACCESS) {
       
 18664         interest(4)
       
 18665         special(SPC_NOMOD)
 10649         extra("ELLLIST             mlis")
 18666         extra("ELLLIST             mlis")
 10650         interest(4)
       
 10651         special(SPC_NOMOD)
       
 10652         prompt("Monitor List")
 18667         prompt("Monitor List")
 10653     }
 18668     }
 10654     field(BKLNK, DBF_NOACCESS) {
 18669     field(BKLNK, DBF_NOACCESS) {
 10655         extra("ELLLIST             bklnk")
 18670         extra("ELLLIST             bklnk")
 10656         prompt("Backwards link tracking")
 18671         prompt("Backwards link tracking")
 10660     field(DISP, DBF_UCHAR) {
 18675     field(DISP, DBF_UCHAR) {
 10661         prompt("Disable putField")
 18676         prompt("Disable putField")
 10662     }
 18677     }
 10663     field(PROC, DBF_UCHAR) {
 18678     field(PROC, DBF_UCHAR) {
 10664         interest(3)
 18679         interest(3)
       
 18680         pp(TRUE)
 10665         prompt("Force Processing")
 18681         prompt("Force Processing")
 10666         pp(TRUE)
       
 10667     }
 18682     }
 10668     field(STAT, DBF_MENU) {
 18683     field(STAT, DBF_MENU) {
 10669         menu(menuAlarmStat)
       
 10670         special(SPC_NOMOD)
       
 10671         prompt("Alarm Status")
 18684         prompt("Alarm Status")
 10672         initial("UDF")
 18685         initial("UDF")
       
 18686         menu(menuAlarmStat)
       
 18687         special(SPC_NOMOD)
 10673     }
 18688     }
 10674     field(SEVR, DBF_MENU) {
 18689     field(SEVR, DBF_MENU) {
 10675         menu(menuAlarmSevr)
 18690         menu(menuAlarmSevr)
 10676         special(SPC_NOMOD)
 18691         special(SPC_NOMOD)
 10677         prompt("Alarm Severity")
 18692         prompt("Alarm Severity")
 10678     }
 18693     }
 10679     field(NSTA, DBF_MENU) {
 18694     field(NSTA, DBF_MENU) {
       
 18695         interest(2)
 10680         menu(menuAlarmStat)
 18696         menu(menuAlarmStat)
       
 18697         special(SPC_NOMOD)
 10681         prompt("New Alarm Status")
 18698         prompt("New Alarm Status")
 10682         interest(2)
       
 10683         special(SPC_NOMOD)
       
 10684     }
 18699     }
 10685     field(NSEV, DBF_MENU) {
 18700     field(NSEV, DBF_MENU) {
 10686         special(SPC_NOMOD)
       
 10687         interest(2)
       
 10688         prompt("New Alarm Severity")
 18701         prompt("New Alarm Severity")
 10689         menu(menuAlarmSevr)
 18702         interest(2)
       
 18703         menu(menuAlarmSevr)
       
 18704         special(SPC_NOMOD)
 10690     }
 18705     }
 10691     field(ACKS, DBF_MENU) {
 18706     field(ACKS, DBF_MENU) {
 10692         prompt("Alarm Ack Severity")
 18707         prompt("Alarm Ack Severity")
 10693         special(SPC_NOMOD)
 18708         interest(2)
 10694         interest(2)
 18709         menu(menuAlarmSevr)
 10695         menu(menuAlarmSevr)
 18710         special(SPC_NOMOD)
 10696     }
 18711     }
 10697     field(ACKT, DBF_MENU) {
 18712     field(ACKT, DBF_MENU) {
       
 18713         menu(menuYesNo)
       
 18714         interest(2)
       
 18715         special(SPC_NOMOD)
       
 18716         promptgroup("70 - Alarm")
       
 18717         initial("YES")
 10698         prompt("Alarm Ack Transient")
 18718         prompt("Alarm Ack Transient")
 10699         interest(2)
       
 10700         promptgroup("70 - Alarm")
       
 10701         special(SPC_NOMOD)
       
 10702         menu(menuYesNo)
       
 10703         initial("YES")
       
 10704     }
 18719     }
 10705     field(DISS, DBF_MENU) {
 18720     field(DISS, DBF_MENU) {
 10706         menu(menuAlarmSevr)
 18721         menu(menuAlarmSevr)
       
 18722         interest(1)
       
 18723         promptgroup("70 - Alarm")
 10707         prompt("Disable Alarm Sevrty")
 18724         prompt("Disable Alarm Sevrty")
 10708         interest(1)
       
 10709         promptgroup("70 - Alarm")
       
 10710     }
 18725     }
 10711     field(LCNT, DBF_UCHAR) {
 18726     field(LCNT, DBF_UCHAR) {
 10712         prompt("Lock Count")
 18727         prompt("Lock Count")
 10713         special(SPC_NOMOD)
 18728         interest(2)
 10714         interest(2)
 18729         special(SPC_NOMOD)
 10715     }
 18730     }
 10716     field(PACT, DBF_UCHAR) {
 18731     field(PACT, DBF_UCHAR) {
 10717         special(SPC_NOMOD)
       
 10718         interest(1)
       
 10719         prompt("Record active")
 18732         prompt("Record active")
       
 18733         interest(1)
       
 18734         special(SPC_NOMOD)
 10720     }
 18735     }
 10721     field(PUTF, DBF_UCHAR) {
 18736     field(PUTF, DBF_UCHAR) {
 10722         prompt("dbPutField process")
 18737         prompt("dbPutField process")
 10723         special(SPC_NOMOD)
 18738         interest(1)
 10724         interest(1)
 18739         special(SPC_NOMOD)
 10725     }
 18740     }
 10726     field(RPRO, DBF_UCHAR) {
 18741     field(RPRO, DBF_UCHAR) {
       
 18742         interest(1)
       
 18743         special(SPC_NOMOD)
 10727         prompt("Reprocess ")
 18744         prompt("Reprocess ")
 10728         interest(1)
       
 10729         special(SPC_NOMOD)
       
 10730     }
 18745     }
 10731     field(ASP, DBF_NOACCESS) {
 18746     field(ASP, DBF_NOACCESS) {
 10732         special(SPC_NOMOD)
 18747         extra("struct asgMember    *asp")
 10733         interest(4)
       
 10734         prompt("Access Security Pvt")
 18748         prompt("Access Security Pvt")
 10735         extra("struct asgMember    *asp")
 18749         special(SPC_NOMOD)
       
 18750         interest(4)
 10736     }
 18751     }
 10737     field(PPN, DBF_NOACCESS) {
 18752     field(PPN, DBF_NOACCESS) {
       
 18753         interest(4)
       
 18754         special(SPC_NOMOD)
       
 18755         prompt("pprocessNotify")
 10738         extra("struct processNotify *ppn")
 18756         extra("struct processNotify *ppn")
 10739         prompt("pprocessNotify")
       
 10740         special(SPC_NOMOD)
       
 10741         interest(4)
       
 10742     }
 18757     }
 10743     field(PPNR, DBF_NOACCESS) {
 18758     field(PPNR, DBF_NOACCESS) {
 10744         special(SPC_NOMOD)
 18759         special(SPC_NOMOD)
 10745         interest(4)
 18760         interest(4)
       
 18761         extra("struct processNotifyRecord *ppnr")
 10746         prompt("pprocessNotifyRecord")
 18762         prompt("pprocessNotifyRecord")
 10747         extra("struct processNotifyRecord *ppnr")
       
 10748     }
 18763     }
 10749     field(SPVT, DBF_NOACCESS) {
 18764     field(SPVT, DBF_NOACCESS) {
 10750         special(SPC_NOMOD)
 18765         interest(4)
 10751         interest(4)
 18766         special(SPC_NOMOD)
 10752         prompt("Scan Private")
 18767         prompt("Scan Private")
 10753         extra("struct scan_element *spvt")
 18768         extra("struct scan_element *spvt")
 10754     }
 18769     }
 10755     field(RSET, DBF_NOACCESS) {
 18770     field(RSET, DBF_NOACCESS) {
       
 18771         special(SPC_NOMOD)
       
 18772         interest(4)
       
 18773         prompt("Address of RSET")
 10756         extra("struct typed_rset   *rset")
 18774         extra("struct typed_rset   *rset")
 10757         special(SPC_NOMOD)
       
 10758         interest(4)
       
 10759         prompt("Address of RSET")
       
 10760     }
 18775     }
 10761     field(DSET, DBF_NOACCESS) {
 18776     field(DSET, DBF_NOACCESS) {
       
 18777         prompt("DSET address")
 10762         extra("struct dset         *dset")
 18778         extra("struct dset         *dset")
 10763         prompt("DSET address")
       
 10764         special(SPC_NOMOD)
 18779         special(SPC_NOMOD)
 10765         interest(4)
 18780         interest(4)
 10766     }
 18781     }
 10767     field(DPVT, DBF_NOACCESS) {
 18782     field(DPVT, DBF_NOACCESS) {
       
 18783         special(SPC_NOMOD)
       
 18784         interest(4)
 10768         prompt("Device Private")
 18785         prompt("Device Private")
 10769         interest(4)
       
 10770         special(SPC_NOMOD)
       
 10771         extra("void                *dpvt")
 18786         extra("void                *dpvt")
 10772     }
 18787     }
 10773     field(RDES, DBF_NOACCESS) {
 18788     field(RDES, DBF_NOACCESS) {
       
 18789         special(SPC_NOMOD)
       
 18790         interest(4)
 10774         extra("struct dbRecordType *rdes")
 18791         extra("struct dbRecordType *rdes")
 10775         interest(4)
       
 10776         special(SPC_NOMOD)
       
 10777         prompt("Address of dbRecordType")
 18792         prompt("Address of dbRecordType")
 10778     }
 18793     }
 10779     field(LSET, DBF_NOACCESS) {
 18794     field(LSET, DBF_NOACCESS) {
 10780         special(SPC_NOMOD)
 18795         special(SPC_NOMOD)
 10781         interest(4)
 18796         interest(4)
       
 18797         extra("struct lockRecord   *lset")
 10782         prompt("Lock Set")
 18798         prompt("Lock Set")
 10783         extra("struct lockRecord   *lset")
       
 10784     }
 18799     }
 10785     field(PRIO, DBF_MENU) {
 18800     field(PRIO, DBF_MENU) {
       
 18801         special(SPC_SCAN)
       
 18802         interest(1)
       
 18803         menu(menuPriority)
       
 18804         promptgroup("20 - Scan")
 10786         prompt("Scheduling Priority")
 18805         prompt("Scheduling Priority")
 10787         interest(1)
       
 10788         special(SPC_SCAN)
       
 10789         promptgroup("20 - Scan")
       
 10790         menu(menuPriority)
       
 10791     }
 18806     }
 10792     field(TPRO, DBF_UCHAR) {
 18807     field(TPRO, DBF_UCHAR) {
 10793         prompt("Trace Processing")
 18808         prompt("Trace Processing")
 10794     }
 18809     }
 10795     field(BKPT, DBF_NOACCESS) {
 18810     field(BKPT, DBF_NOACCESS) {
 10796         special(SPC_NOMOD)
 18811         special(SPC_NOMOD)
 10797         interest(1)
 18812         interest(1)
       
 18813         extra("char                bkpt")
 10798         prompt("Break Point")
 18814         prompt("Break Point")
 10799         extra("char                bkpt")
       
 10800     }
 18815     }
 10801     field(UDF, DBF_UCHAR) {
 18816     field(UDF, DBF_UCHAR) {
 10802         initial("1")
 18817         interest(1)
 10803         pp(TRUE)
 18818         pp(TRUE)
 10804         promptgroup("10 - Common")
 18819         promptgroup("10 - Common")
 10805         interest(1)
 18820         initial("1")
 10806         prompt("Undefined")
 18821         prompt("Undefined")
 10807     }
 18822     }
 10808     field(UDFS, DBF_MENU) {
 18823     field(UDFS, DBF_MENU) {
       
 18824         promptgroup("70 - Alarm")
       
 18825         interest(1)
       
 18826         menu(menuAlarmSevr)
       
 18827         prompt("Undefined Alarm Sevrty")
 10809         initial("INVALID")
 18828         initial("INVALID")
 10810         prompt("Undefined Alarm Sevrty")
       
 10811         interest(1)
       
 10812         promptgroup("70 - Alarm")
       
 10813         menu(menuAlarmSevr)
       
 10814     }
 18829     }
 10815     field(TIME, DBF_NOACCESS) {
 18830     field(TIME, DBF_NOACCESS) {
       
 18831         prompt("Time")
 10816         extra("epicsTimeStamp      time")
 18832         extra("epicsTimeStamp      time")
 10817         special(SPC_NOMOD)
 18833         interest(2)
 10818         interest(2)
 18834         special(SPC_NOMOD)
 10819         prompt("Time")
       
 10820     }
 18835     }
 10821     field(FLNK, DBF_FWDLINK) {
 18836     field(FLNK, DBF_FWDLINK) {
 10822         interest(1)
 18837         promptgroup("20 - Scan")
 10823         promptgroup("20 - Scan")
 18838         interest(1)
 10824         prompt("Forward Process Link")
 18839         prompt("Forward Process Link")
 10825     }
 18840     }
 10826     field(VAL, DBF_INT64) {
 18841     field(VAL, DBF_INT64) {
 10827         promptgroup("50 - Output")
 18842         prompt("Current value")
 10828         prompt("Desired Output")
       
 10829         asl(ASL0)
 18843         asl(ASL0)
 10830         pp(TRUE)
 18844         pp(TRUE)
 10831     }
       
 10832     field(OUT, DBF_OUTLINK) {
       
 10833         promptgroup("50 - Output")
       
 10834         interest(1)
       
 10835         prompt("Output Specification")
       
 10836     }
       
 10837     field(DOL, DBF_INLINK) {
       
 10838         promptgroup("40 - Input")
 18845         promptgroup("40 - Input")
 10839         interest(1)
 18846     }
 10840         prompt("Desired Output Loc")
 18847     field(INP, DBF_INLINK) {
 10841     }
 18848         prompt("Input Specification")
 10842     field(OMSL, DBF_MENU) {
 18849         interest(1)
 10843         menu(menuOmsl)
 18850         promptgroup("40 - Input")
 10844         promptgroup("50 - Output")
       
 10845         interest(1)
       
 10846         prompt("Output Mode Select")
       
 10847     }
 18851     }
 10848     field(EGU, DBF_STRING) {
 18852     field(EGU, DBF_STRING) {
       
 18853         promptgroup("80 - Display")
       
 18854         prop(YES)
       
 18855         interest(1)
 10849         prompt("Units name")
 18856         prompt("Units name")
       
 18857         size(16)
       
 18858     }
       
 18859     field(HOPR, DBF_INT64) {
       
 18860         prompt("High Operating Range")
       
 18861         interest(1)
 10850         prop(YES)
 18862         prop(YES)
 10851         promptgroup("80 - Display")
 18863         promptgroup("80 - Display")
 10852         interest(1)
 18864     }
 10853         size(16)
 18865     field(LOPR, DBF_INT64) {
 10854     }
 18866         prompt("Low Operating Range")
 10855     field(DRVH, DBF_INT64) {
       
 10856         pp(TRUE)
       
 10857         interest(1)
       
 10858         prop(YES)
 18867         prop(YES)
 10859         promptgroup("30 - Action")
 18868         interest(1)
 10860         prompt("Drive High Limit")
 18869         promptgroup("80 - Display")
 10861     }
 18870     }
 10862     field(DRVL, DBF_INT64) {
 18871     field(HIHI, DBF_INT64) {
 10863         prompt("Drive Low Limit")
 18872         prompt("Hihi Alarm Limit")
 10864         promptgroup("30 - Action")
 18873         interest(1)
 10865         prop(YES)
 18874         prop(YES)
 10866         interest(1)
 18875         pp(TRUE)
 10867         pp(TRUE)
 18876         promptgroup("70 - Alarm")
 10868     }
 18877     }
 10869     field(HOPR, DBF_INT64) {
 18878     field(LOLO, DBF_INT64) {
 10870         prompt("High Operating Range")
       
 10871         prop(YES)
 18879         prop(YES)
 10872         interest(1)
 18880         interest(1)
 10873         promptgroup("80 - Display")
 18881         promptgroup("70 - Alarm")
 10874     }
 18882         pp(TRUE)
 10875     field(LOPR, DBF_INT64) {
       
 10876         interest(1)
       
 10877         prop(YES)
       
 10878         promptgroup("80 - Display")
       
 10879         prompt("Low Operating Range")
       
 10880     }
       
 10881     field(HIHI, DBF_INT64) {
       
 10882         pp(TRUE)
       
 10883         interest(1)
       
 10884         prop(YES)
       
 10885         promptgroup("70 - Alarm")
       
 10886         prompt("Hihi Alarm Limit")
       
 10887     }
       
 10888     field(LOLO, DBF_INT64) {
       
 10889         prompt("Lolo Alarm Limit")
 18883         prompt("Lolo Alarm Limit")
 10890         prop(YES)
       
 10891         promptgroup("70 - Alarm")
       
 10892         interest(1)
       
 10893         pp(TRUE)
       
 10894     }
 18884     }
 10895     field(HIGH, DBF_INT64) {
 18885     field(HIGH, DBF_INT64) {
 10896         prompt("High Alarm Limit")
 18886         prompt("High Alarm Limit")
 10897         promptgroup("70 - Alarm")
 18887         promptgroup("70 - Alarm")
       
 18888         pp(TRUE)
 10898         prop(YES)
 18889         prop(YES)
 10899         interest(1)
 18890         interest(1)
 10900         pp(TRUE)
       
 10901     }
 18891     }
 10902     field(LOW, DBF_INT64) {
 18892     field(LOW, DBF_INT64) {
       
 18893         prop(YES)
       
 18894         interest(1)
       
 18895         promptgroup("70 - Alarm")
 10903         pp(TRUE)
 18896         pp(TRUE)
 10904         prompt("Low Alarm Limit")
 18897         prompt("Low Alarm Limit")
 10905         prop(YES)
       
 10906         interest(1)
       
 10907         promptgroup("70 - Alarm")
       
 10908     }
 18898     }
 10909     field(HHSV, DBF_MENU) {
 18899     field(HHSV, DBF_MENU) {
 10910         pp(TRUE)
       
 10911         interest(1)
       
 10912         promptgroup("70 - Alarm")
       
 10913         prompt("Hihi Severity")
 18900         prompt("Hihi Severity")
 10914         menu(menuAlarmSevr)
 18901         promptgroup("70 - Alarm")
       
 18902         pp(TRUE)
       
 18903         menu(menuAlarmSevr)
       
 18904         interest(1)
 10915     }
 18905     }
 10916     field(LLSV, DBF_MENU) {
 18906     field(LLSV, DBF_MENU) {
 10917         menu(menuAlarmSevr)
       
 10918         prompt("Lolo Severity")
 18907         prompt("Lolo Severity")
 10919         promptgroup("70 - Alarm")
 18908         pp(TRUE)
 10920         interest(1)
 18909         promptgroup("70 - Alarm")
 10921         pp(TRUE)
 18910         menu(menuAlarmSevr)
       
 18911         interest(1)
 10922     }
 18912     }
 10923     field(HSV, DBF_MENU) {
 18913     field(HSV, DBF_MENU) {
 10924         menu(menuAlarmSevr)
       
 10925         interest(1)
       
 10926         promptgroup("70 - Alarm")
       
 10927         prompt("High Severity")
 18914         prompt("High Severity")
 10928         pp(TRUE)
 18915         pp(TRUE)
       
 18916         promptgroup("70 - Alarm")
       
 18917         interest(1)
       
 18918         menu(menuAlarmSevr)
 10929     }
 18919     }
 10930     field(LSV, DBF_MENU) {
 18920     field(LSV, DBF_MENU) {
 10931         pp(TRUE)
 18921         promptgroup("70 - Alarm")
 10932         promptgroup("70 - Alarm")
 18922         pp(TRUE)
       
 18923         menu(menuAlarmSevr)
 10933         interest(1)
 18924         interest(1)
 10934         prompt("Low Severity")
 18925         prompt("Low Severity")
 10935         menu(menuAlarmSevr)
       
 10936     }
 18926     }
 10937     field(HYST, DBF_INT64) {
 18927     field(HYST, DBF_INT64) {
 10938         promptgroup("70 - Alarm")
       
 10939         interest(1)
       
 10940         prompt("Alarm Deadband")
 18928         prompt("Alarm Deadband")
       
 18929         promptgroup("70 - Alarm")
       
 18930         interest(1)
       
 18931     }
       
 18932     field(AFTC, DBF_DOUBLE) {
       
 18933         interest(1)
       
 18934         promptgroup("70 - Alarm")
       
 18935         prompt("Alarm Filter Time Constant")
       
 18936     }
       
 18937     field(AFVL, DBF_DOUBLE) {
       
 18938         special(SPC_NOMOD)
       
 18939         interest(3)
       
 18940         prompt("Alarm Filter Value")
 10941     }
 18941     }
 10942     field(ADEL, DBF_INT64) {
 18942     field(ADEL, DBF_INT64) {
       
 18943         promptgroup("80 - Display")
       
 18944         interest(1)
 10943         prompt("Archive Deadband")
 18945         prompt("Archive Deadband")
       
 18946     }
       
 18947     field(MDEL, DBF_INT64) {
 10944         interest(1)
 18948         interest(1)
 10945         promptgroup("80 - Display")
 18949         promptgroup("80 - Display")
 10946     }
       
 10947     field(MDEL, DBF_INT64) {
       
 10948         promptgroup("80 - Display")
       
 10949         interest(1)
       
 10950         prompt("Monitor Deadband")
 18950         prompt("Monitor Deadband")
 10951     }
 18951     }
 10952     field(LALM, DBF_INT64) {
 18952     field(LALM, DBF_INT64) {
       
 18953         interest(3)
       
 18954         special(SPC_NOMOD)
 10953         prompt("Last Value Alarmed")
 18955         prompt("Last Value Alarmed")
 10954         special(SPC_NOMOD)
       
 10955         interest(3)
       
 10956     }
 18956     }
 10957     field(ALST, DBF_INT64) {
 18957     field(ALST, DBF_INT64) {
 10958         prompt("Last Value Archived")
 18958         prompt("Last Value Archived")
 10959         special(SPC_NOMOD)
 18959         special(SPC_NOMOD)
 10960         interest(3)
 18960         interest(3)
 10961     }
 18961     }
 10962     field(MLST, DBF_INT64) {
 18962     field(MLST, DBF_INT64) {
 10963         prompt("Last Val Monitored")
 18963         prompt("Last Val Monitored")
 10964         special(SPC_NOMOD)
 18964         interest(3)
 10965         interest(3)
 18965         special(SPC_NOMOD)
 10966     }
 18966     }
 10967     field(SIOL, DBF_OUTLINK) {
 18967     field(SIOL, DBF_INLINK) {
 10968         prompt("Simulation Output Link")
       
 10969         promptgroup("90 - Simulate")
 18968         promptgroup("90 - Simulate")
 10970         interest(1)
 18969         interest(1)
       
 18970         prompt("Simulation Input Link")
       
 18971     }
       
 18972     field(SVAL, DBF_INT64) {
       
 18973         prompt("Simulation Value")
 10971     }
 18974     }
 10972     field(SIML, DBF_INLINK) {
 18975     field(SIML, DBF_INLINK) {
       
 18976         prompt("Simulation Mode Link")
 10973         interest(1)
 18977         interest(1)
 10974         promptgroup("90 - Simulate")
 18978         promptgroup("90 - Simulate")
 10975         prompt("Simulation Mode Link")
       
 10976     }
 18979     }
 10977     field(SIMM, DBF_MENU) {
 18980     field(SIMM, DBF_MENU) {
       
 18981         special(SPC_MOD)
       
 18982         interest(1)
       
 18983         menu(menuYesNo)
 10978         prompt("Simulation Mode")
 18984         prompt("Simulation Mode")
 10979         special(SPC_MOD)
       
 10980         interest(1)
       
 10981         menu(menuYesNo)
       
 10982     }
 18985     }
 10983     field(SIMS, DBF_MENU) {
 18986     field(SIMS, DBF_MENU) {
 10984         menu(menuAlarmSevr)
       
 10985         prompt("Simulation Mode Severity")
 18987         prompt("Simulation Mode Severity")
 10986         interest(2)
 18988         interest(2)
       
 18989         menu(menuAlarmSevr)
 10987         promptgroup("90 - Simulate")
 18990         promptgroup("90 - Simulate")
 10988     }
 18991     }
 10989     field(OLDSIMM, DBF_MENU) {
 18992     field(OLDSIMM, DBF_MENU) {
 10990         interest(4)
       
 10991         special(SPC_NOMOD)
       
 10992         prompt("Prev. Simulation Mode")
 18993         prompt("Prev. Simulation Mode")
 10993         menu(menuSimm)
 18994         menu(menuSimm)
       
 18995         interest(4)
       
 18996         special(SPC_NOMOD)
 10994     }
 18997     }
 10995     field(SSCN, DBF_MENU) {
 18998     field(SSCN, DBF_MENU) {
 10996         interest(1)
 18999         interest(1)
       
 19000         menu(menuScan)
 10997         promptgroup("90 - Simulate")
 19001         promptgroup("90 - Simulate")
       
 19002         initial("65535")
 10998         prompt("Sim. Mode Scan")
 19003         prompt("Sim. Mode Scan")
 10999         menu(menuScan)
       
 11000         initial("65535")
       
 11001     }
 19004     }
 11002     field(SDLY, DBF_DOUBLE) {
 19005     field(SDLY, DBF_DOUBLE) {
       
 19006         interest(2)
 11003         promptgroup("90 - Simulate")
 19007         promptgroup("90 - Simulate")
 11004         interest(2)
 19008         initial("-1.0")
 11005         prompt("Sim. Mode Async Delay")
 19009         prompt("Sim. Mode Async Delay")
 11006         initial("-1.0")
       
 11007     }
 19010     }
 11008     field(SIMPVT, DBF_NOACCESS) {
 19011     field(SIMPVT, DBF_NOACCESS) {
 11009         extra("CALLBACK            *simpvt")
 19012         extra("CALLBACK            *simpvt")
 11010         prompt("Sim. Mode Private")
 19013         prompt("Sim. Mode Private")
 11011         special(SPC_NOMOD)
 19014         interest(4)
 11012         interest(4)
 19015         special(SPC_NOMOD)
 11013     }
       
 11014     field(IVOA, DBF_MENU) {
       
 11015         prompt("INVALID output action")
       
 11016         promptgroup("50 - Output")
       
 11017         interest(2)
       
 11018         menu(menuIvoa)
       
 11019     }
       
 11020     field(IVOV, DBF_INT64) {
       
 11021         prompt("INVALID output value")
       
 11022         interest(2)
       
 11023         promptgroup("50 - Output")
       
 11024     }
 19016     }
 11025 }
 19017 }
 11026 device(int64out, CONSTANT, devI64outSoft, "Soft Channel")
 19018 device(int64in, CONSTANT, devI64inSoft, "Soft Channel")
 11027 device(int64out, CONSTANT, devI64outSoftCallback, "Async Soft Channel")
 19019 device(int64in, CONSTANT, devI64inSoftCallback, "Async Soft Channel")
 11028 recordtype(aSub) {
 19020 recordtype(bo) {
 11029     %#include "epicsTypes.h"
 19021     %#include "epicsTypes.h"
 11030     %#include "link.h"
 19022     %#include "link.h"
 11031     %#include "epicsMutex.h"
 19023     %#include "epicsMutex.h"
 11032     %#include "ellLib.h"
 19024     %#include "ellLib.h"
 11033     %#include "epicsTime.h"
 19025     %#include "epicsTime.h"
 11034     %struct aSubRecord;
 19026     %#include "callback.h"
 11035     field(NAME, DBF_STRING) {
 19027     field(NAME, DBF_STRING) {
 11036         special(SPC_NOMOD)
 19028         special(SPC_NOMOD)
 11037         prompt("Record Name")
 19029         prompt("Record Name")
 11038         size(61)
 19030         size(61)
 11039     }
 19031     }
 11040     field(DESC, DBF_STRING) {
 19032     field(DESC, DBF_STRING) {
       
 19033         prompt("Descriptor")
 11041         size(41)
 19034         size(41)
 11042         prompt("Descriptor")
       
 11043         promptgroup("10 - Common")
 19035         promptgroup("10 - Common")
 11044     }
 19036     }
 11045     field(ASG, DBF_STRING) {
 19037     field(ASG, DBF_STRING) {
 11046         promptgroup("10 - Common")
       
 11047         special(SPC_AS)
       
 11048         prompt("Access Security Group")
 19038         prompt("Access Security Group")
 11049         size(29)
 19039         size(29)
       
 19040         promptgroup("10 - Common")
       
 19041         special(SPC_AS)
 11050     }
 19042     }
 11051     field(SCAN, DBF_MENU) {
 19043     field(SCAN, DBF_MENU) {
 11052         promptgroup("20 - Scan")
 19044         promptgroup("20 - Scan")
 11053         interest(1)
       
 11054         special(SPC_SCAN)
 19045         special(SPC_SCAN)
       
 19046         menu(menuScan)
       
 19047         interest(1)
 11055         prompt("Scan Mechanism")
 19048         prompt("Scan Mechanism")
       
 19049     }
       
 19050     field(PINI, DBF_MENU) {
       
 19051         promptgroup("20 - Scan")
       
 19052         menu(menuPini)
       
 19053         interest(1)
       
 19054         prompt("Process at iocInit")
       
 19055     }
       
 19056     field(PHAS, DBF_SHORT) {
       
 19057         promptgroup("20 - Scan")
       
 19058         special(SPC_SCAN)
       
 19059         interest(1)
       
 19060         prompt("Scan Phase")
       
 19061     }
       
 19062     field(EVNT, DBF_STRING) {
       
 19063         size(40)
       
 19064         prompt("Event Name")
       
 19065         special(SPC_SCAN)
       
 19066         interest(1)
       
 19067         promptgroup("20 - Scan")
       
 19068     }
       
 19069     field(TSE, DBF_SHORT) {
       
 19070         promptgroup("20 - Scan")
       
 19071         interest(1)
       
 19072         prompt("Time Stamp Event")
       
 19073     }
       
 19074     field(TSEL, DBF_INLINK) {
       
 19075         promptgroup("20 - Scan")
       
 19076         interest(1)
       
 19077         prompt("Time Stamp Link")
       
 19078     }
       
 19079     field(DTYP, DBF_DEVICE) {
       
 19080         prompt("Device Type")
       
 19081         interest(1)
       
 19082         promptgroup("10 - Common")
       
 19083     }
       
 19084     field(DISV, DBF_SHORT) {
       
 19085         initial("1")
       
 19086         prompt("Disable Value")
       
 19087         promptgroup("20 - Scan")
       
 19088     }
       
 19089     field(DISA, DBF_SHORT) {
       
 19090         prompt("Disable")
       
 19091     }
       
 19092     field(SDIS, DBF_INLINK) {
       
 19093         interest(1)
       
 19094         promptgroup("20 - Scan")
       
 19095         prompt("Scanning Disable")
       
 19096     }
       
 19097     field(MLOK, DBF_NOACCESS) {
       
 19098         interest(4)
       
 19099         special(SPC_NOMOD)
       
 19100         extra("epicsMutexId        mlok")
       
 19101         prompt("Monitor lock")
       
 19102     }
       
 19103     field(MLIS, DBF_NOACCESS) {
       
 19104         prompt("Monitor List")
       
 19105         extra("ELLLIST             mlis")
       
 19106         special(SPC_NOMOD)
       
 19107         interest(4)
       
 19108     }
       
 19109     field(BKLNK, DBF_NOACCESS) {
       
 19110         extra("ELLLIST             bklnk")
       
 19111         prompt("Backwards link tracking")
       
 19112         interest(4)
       
 19113         special(SPC_NOMOD)
       
 19114     }
       
 19115     field(DISP, DBF_UCHAR) {
       
 19116         prompt("Disable putField")
       
 19117     }
       
 19118     field(PROC, DBF_UCHAR) {
       
 19119         prompt("Force Processing")
       
 19120         pp(TRUE)
       
 19121         interest(3)
       
 19122     }
       
 19123     field(STAT, DBF_MENU) {
       
 19124         prompt("Alarm Status")
       
 19125         initial("UDF")
       
 19126         menu(menuAlarmStat)
       
 19127         special(SPC_NOMOD)
       
 19128     }
       
 19129     field(SEVR, DBF_MENU) {
       
 19130         prompt("Alarm Severity")
       
 19131         menu(menuAlarmSevr)
       
 19132         special(SPC_NOMOD)
       
 19133     }
       
 19134     field(NSTA, DBF_MENU) {
       
 19135         menu(menuAlarmStat)
       
 19136         interest(2)
       
 19137         special(SPC_NOMOD)
       
 19138         prompt("New Alarm Status")
       
 19139     }
       
 19140     field(NSEV, DBF_MENU) {
       
 19141         special(SPC_NOMOD)
       
 19142         interest(2)
       
 19143         menu(menuAlarmSevr)
       
 19144         prompt("New Alarm Severity")
       
 19145     }
       
 19146     field(ACKS, DBF_MENU) {
       
 19147         interest(2)
       
 19148         menu(menuAlarmSevr)
       
 19149         special(SPC_NOMOD)
       
 19150         prompt("Alarm Ack Severity")
       
 19151     }
       
 19152     field(ACKT, DBF_MENU) {
       
 19153         prompt("Alarm Ack Transient")
       
 19154         initial("YES")
       
 19155         promptgroup("70 - Alarm")
       
 19156         menu(menuYesNo)
       
 19157         interest(2)
       
 19158         special(SPC_NOMOD)
       
 19159     }
       
 19160     field(DISS, DBF_MENU) {
       
 19161         promptgroup("70 - Alarm")
       
 19162         menu(menuAlarmSevr)
       
 19163         interest(1)
       
 19164         prompt("Disable Alarm Sevrty")
       
 19165     }
       
 19166     field(LCNT, DBF_UCHAR) {
       
 19167         interest(2)
       
 19168         special(SPC_NOMOD)
       
 19169         prompt("Lock Count")
       
 19170     }
       
 19171     field(PACT, DBF_UCHAR) {
       
 19172         prompt("Record active")
       
 19173         special(SPC_NOMOD)
       
 19174         interest(1)
       
 19175     }
       
 19176     field(PUTF, DBF_UCHAR) {
       
 19177         special(SPC_NOMOD)
       
 19178         interest(1)
       
 19179         prompt("dbPutField process")
       
 19180     }
       
 19181     field(RPRO, DBF_UCHAR) {
       
 19182         prompt("Reprocess ")
       
 19183         interest(1)
       
 19184         special(SPC_NOMOD)
       
 19185     }
       
 19186     field(ASP, DBF_NOACCESS) {
       
 19187         special(SPC_NOMOD)
       
 19188         interest(4)
       
 19189         extra("struct asgMember    *asp")
       
 19190         prompt("Access Security Pvt")
       
 19191     }
       
 19192     field(PPN, DBF_NOACCESS) {
       
 19193         interest(4)
       
 19194         special(SPC_NOMOD)
       
 19195         prompt("pprocessNotify")
       
 19196         extra("struct processNotify *ppn")
       
 19197     }
       
 19198     field(PPNR, DBF_NOACCESS) {
       
 19199         extra("struct processNotifyRecord *ppnr")
       
 19200         prompt("pprocessNotifyRecord")
       
 19201         interest(4)
       
 19202         special(SPC_NOMOD)
       
 19203     }
       
 19204     field(SPVT, DBF_NOACCESS) {
       
 19205         interest(4)
       
 19206         special(SPC_NOMOD)
       
 19207         prompt("Scan Private")
       
 19208         extra("struct scan_element *spvt")
       
 19209     }
       
 19210     field(RSET, DBF_NOACCESS) {
       
 19211         interest(4)
       
 19212         special(SPC_NOMOD)
       
 19213         prompt("Address of RSET")
       
 19214         extra("struct typed_rset   *rset")
       
 19215     }
       
 19216     field(DSET, DBF_NOACCESS) {
       
 19217         extra("struct dset         *dset")
       
 19218         prompt("DSET address")
       
 19219         special(SPC_NOMOD)
       
 19220         interest(4)
       
 19221     }
       
 19222     field(DPVT, DBF_NOACCESS) {
       
 19223         prompt("Device Private")
       
 19224         extra("void                *dpvt")
       
 19225         special(SPC_NOMOD)
       
 19226         interest(4)
       
 19227     }
       
 19228     field(RDES, DBF_NOACCESS) {
       
 19229         prompt("Address of dbRecordType")
       
 19230         extra("struct dbRecordType *rdes")
       
 19231         special(SPC_NOMOD)
       
 19232         interest(4)
       
 19233     }
       
 19234     field(LSET, DBF_NOACCESS) {
       
 19235         special(SPC_NOMOD)
       
 19236         interest(4)
       
 19237         prompt("Lock Set")
       
 19238         extra("struct lockRecord   *lset")
       
 19239     }
       
 19240     field(PRIO, DBF_MENU) {
       
 19241         prompt("Scheduling Priority")
       
 19242         menu(menuPriority)
       
 19243         interest(1)
       
 19244         special(SPC_SCAN)
       
 19245         promptgroup("20 - Scan")
       
 19246     }
       
 19247     field(TPRO, DBF_UCHAR) {
       
 19248         prompt("Trace Processing")
       
 19249     }
       
 19250     field(BKPT, DBF_NOACCESS) {
       
 19251         special(SPC_NOMOD)
       
 19252         interest(1)
       
 19253         prompt("Break Point")
       
 19254         extra("char                bkpt")
       
 19255     }
       
 19256     field(UDF, DBF_UCHAR) {
       
 19257         interest(1)
       
 19258         pp(TRUE)
       
 19259         promptgroup("10 - Common")
       
 19260         initial("1")
       
 19261         prompt("Undefined")
       
 19262     }
       
 19263     field(UDFS, DBF_MENU) {
       
 19264         initial("INVALID")
       
 19265         prompt("Undefined Alarm Sevrty")
       
 19266         interest(1)
       
 19267         menu(menuAlarmSevr)
       
 19268         promptgroup("70 - Alarm")
       
 19269     }
       
 19270     field(TIME, DBF_NOACCESS) {
       
 19271         extra("epicsTimeStamp      time")
       
 19272         prompt("Time")
       
 19273         interest(2)
       
 19274         special(SPC_NOMOD)
       
 19275     }
       
 19276     field(FLNK, DBF_FWDLINK) {
       
 19277         interest(1)
       
 19278         promptgroup("20 - Scan")
       
 19279         prompt("Forward Process Link")
       
 19280     }
       
 19281     field(VAL, DBF_ENUM) {
       
 19282         pp(TRUE)
       
 19283         promptgroup("50 - Output")
       
 19284         prompt("Current Value")
       
 19285         asl(ASL0)
       
 19286     }
       
 19287     field(OMSL, DBF_MENU) {
       
 19288         promptgroup("50 - Output")
       
 19289         interest(1)
       
 19290         menu(menuOmsl)
       
 19291         prompt("Output Mode Select")
       
 19292     }
       
 19293     field(DOL, DBF_INLINK) {
       
 19294         prompt("Desired Output Loc")
       
 19295         interest(1)
       
 19296         promptgroup("40 - Input")
       
 19297     }
       
 19298     field(OUT, DBF_OUTLINK) {
       
 19299         prompt("Output Specification")
       
 19300         promptgroup("50 - Output")
       
 19301         interest(1)
       
 19302     }
       
 19303     field(HIGH, DBF_DOUBLE) {
       
 19304         interest(1)
       
 19305         promptgroup("30 - Action")
       
 19306         prompt("Seconds to Hold High")
       
 19307     }
       
 19308     field(ZNAM, DBF_STRING) {
       
 19309         prompt("Zero Name")
       
 19310         size(26)
       
 19311         promptgroup("80 - Display")
       
 19312         pp(TRUE)
       
 19313         prop(YES)
       
 19314         interest(1)
       
 19315     }
       
 19316     field(ONAM, DBF_STRING) {
       
 19317         size(26)
       
 19318         prompt("One Name")
       
 19319         interest(1)
       
 19320         prop(YES)
       
 19321         promptgroup("80 - Display")
       
 19322         pp(TRUE)
       
 19323     }
       
 19324     field(RVAL, DBF_ULONG) {
       
 19325         prompt("Raw Value")
       
 19326         pp(TRUE)
       
 19327     }
       
 19328     field(ORAW, DBF_ULONG) {
       
 19329         prompt("prev Raw Value")
       
 19330         special(SPC_NOMOD)
       
 19331         interest(3)
       
 19332     }
       
 19333     field(MASK, DBF_ULONG) {
       
 19334         prompt("Hardware Mask")
       
 19335         interest(1)
       
 19336         special(SPC_NOMOD)
       
 19337     }
       
 19338     field(RPVT, DBF_NOACCESS) {
       
 19339         extra("void *  rpvt")
       
 19340         prompt("Record Private")
       
 19341         interest(4)
       
 19342         special(SPC_NOMOD)
       
 19343     }
       
 19344     field(WDPT, DBF_NOACCESS) {
       
 19345         prompt("Watch Dog Timer ID")
       
 19346         extra("void *	wdpt")
       
 19347         interest(4)
       
 19348         special(SPC_NOMOD)
       
 19349     }
       
 19350     field(ZSV, DBF_MENU) {
       
 19351         prompt("Zero Error Severity")
       
 19352         interest(1)
       
 19353         menu(menuAlarmSevr)
       
 19354         pp(TRUE)
       
 19355         promptgroup("70 - Alarm")
       
 19356     }
       
 19357     field(OSV, DBF_MENU) {
       
 19358         menu(menuAlarmSevr)
       
 19359         interest(1)
       
 19360         promptgroup("70 - Alarm")
       
 19361         pp(TRUE)
       
 19362         prompt("One Error Severity")
       
 19363     }
       
 19364     field(COSV, DBF_MENU) {
       
 19365         menu(menuAlarmSevr)
       
 19366         interest(1)
       
 19367         pp(TRUE)
       
 19368         promptgroup("70 - Alarm")
       
 19369         prompt("Change of State Sevr")
       
 19370     }
       
 19371     field(RBV, DBF_ULONG) {
       
 19372         special(SPC_NOMOD)
       
 19373         prompt("Readback Value")
       
 19374     }
       
 19375     field(ORBV, DBF_ULONG) {
       
 19376         interest(3)
       
 19377         special(SPC_NOMOD)
       
 19378         prompt("Prev Readback Value")
       
 19379     }
       
 19380     field(MLST, DBF_USHORT) {
       
 19381         interest(3)
       
 19382         special(SPC_NOMOD)
       
 19383         prompt("Last Value Monitored")
       
 19384     }
       
 19385     field(LALM, DBF_USHORT) {
       
 19386         interest(3)
       
 19387         special(SPC_NOMOD)
       
 19388         prompt("Last Value Alarmed")
       
 19389     }
       
 19390     field(SIOL, DBF_OUTLINK) {
       
 19391         promptgroup("90 - Simulate")
       
 19392         interest(1)
       
 19393         prompt("Simulation Output Link")
       
 19394     }
       
 19395     field(SIML, DBF_INLINK) {
       
 19396         promptgroup("90 - Simulate")
       
 19397         interest(1)
       
 19398         prompt("Simulation Mode Link")
       
 19399     }
       
 19400     field(SIMM, DBF_MENU) {
       
 19401         interest(1)
       
 19402         menu(menuYesNo)
       
 19403         special(SPC_MOD)
       
 19404         prompt("Simulation Mode")
       
 19405     }
       
 19406     field(SIMS, DBF_MENU) {
       
 19407         prompt("Simulation Mode Severity")
       
 19408         promptgroup("90 - Simulate")
       
 19409         interest(2)
       
 19410         menu(menuAlarmSevr)
       
 19411     }
       
 19412     field(OLDSIMM, DBF_MENU) {
       
 19413         special(SPC_NOMOD)
       
 19414         interest(4)
       
 19415         menu(menuSimm)
       
 19416         prompt("Prev. Simulation Mode")
       
 19417     }
       
 19418     field(SSCN, DBF_MENU) {
       
 19419         prompt("Sim. Mode Scan")
       
 19420         initial("65535")
       
 19421         promptgroup("90 - Simulate")
       
 19422         interest(1)
 11056         menu(menuScan)
 19423         menu(menuScan)
 11057     }
 19424     }
       
 19425     field(SDLY, DBF_DOUBLE) {
       
 19426         initial("-1.0")
       
 19427         prompt("Sim. Mode Async Delay")
       
 19428         interest(2)
       
 19429         promptgroup("90 - Simulate")
       
 19430     }
       
 19431     field(SIMPVT, DBF_NOACCESS) {
       
 19432         interest(4)
       
 19433         special(SPC_NOMOD)
       
 19434         prompt("Sim. Mode Private")
       
 19435         extra("CALLBACK            *simpvt")
       
 19436     }
       
 19437     field(IVOA, DBF_MENU) {
       
 19438         prompt("INVALID outpt action")
       
 19439         promptgroup("50 - Output")
       
 19440         menu(menuIvoa)
       
 19441         interest(2)
       
 19442     }
       
 19443     field(IVOV, DBF_USHORT) {
       
 19444         prompt("INVALID output value")
       
 19445         promptgroup("50 - Output")
       
 19446         interest(2)
       
 19447     }
       
 19448 }
       
 19449 device(bo, CONSTANT, devBoSoft, "Soft Channel")
       
 19450 device(bo, CONSTANT, devBoSoftRaw, "Raw Soft Channel")
       
 19451 device(bo, CONSTANT, devBoSoftCallback, "Async Soft Channel")
       
 19452 device(bo, INST_IO, devBoGeneralTime, "General Time")
       
 19453 device(bo, INST_IO, devBoDbState, "Db State")
       
 19454 device(bo, INST_IO, asynBoInt32, "asynInt32")
       
 19455 device(bo, INST_IO, asynBoUInt32Digital, "asynUInt32Digital")
       
 19456 device(bo, INST_IO, devboStream, "stream")
       
 19457 device(bo, INST_IO, devBoStrParm, "asyn bo stringParm")
       
 19458 device(bo, INST_IO, devBoMPC, "asyn MPC")
       
 19459 device(bo, GPIB_IO, devBoGP307Gpib, "Vg307 GPIB Instrument")
       
 19460 device(bo, BBGPIB_IO, devBoAX301, "PZT Bug")
       
 19461 device(bo, INST_IO, devBoTPG261, "asyn TPG261")
       
 19462 recordtype(stringout) {
       
 19463     %#include "epicsTypes.h"
       
 19464     %#include "link.h"
       
 19465     %#include "epicsMutex.h"
       
 19466     %#include "ellLib.h"
       
 19467     %#include "epicsTime.h"
       
 19468     %#include "callback.h"
       
 19469     field(NAME, DBF_STRING) {
       
 19470         size(61)
       
 19471         prompt("Record Name")
       
 19472         special(SPC_NOMOD)
       
 19473     }
       
 19474     field(DESC, DBF_STRING) {
       
 19475         prompt("Descriptor")
       
 19476         size(41)
       
 19477         promptgroup("10 - Common")
       
 19478     }
       
 19479     field(ASG, DBF_STRING) {
       
 19480         prompt("Access Security Group")
       
 19481         size(29)
       
 19482         promptgroup("10 - Common")
       
 19483         special(SPC_AS)
       
 19484     }
       
 19485     field(SCAN, DBF_MENU) {
       
 19486         special(SPC_SCAN)
       
 19487         interest(1)
       
 19488         menu(menuScan)
       
 19489         promptgroup("20 - Scan")
       
 19490         prompt("Scan Mechanism")
       
 19491     }
 11058     field(PINI, DBF_MENU) {
 19492     field(PINI, DBF_MENU) {
 11059         promptgroup("20 - Scan")
 19493         prompt("Process at iocInit")
 11060         interest(1)
 19494         promptgroup("20 - Scan")
       
 19495         interest(1)
       
 19496         menu(menuPini)
       
 19497     }
       
 19498     field(PHAS, DBF_SHORT) {
       
 19499         promptgroup("20 - Scan")
       
 19500         special(SPC_SCAN)
       
 19501         interest(1)
       
 19502         prompt("Scan Phase")
       
 19503     }
       
 19504     field(EVNT, DBF_STRING) {
       
 19505         special(SPC_SCAN)
       
 19506         interest(1)
       
 19507         promptgroup("20 - Scan")
       
 19508         size(40)
       
 19509         prompt("Event Name")
       
 19510     }
       
 19511     field(TSE, DBF_SHORT) {
       
 19512         interest(1)
       
 19513         promptgroup("20 - Scan")
       
 19514         prompt("Time Stamp Event")
       
 19515     }
       
 19516     field(TSEL, DBF_INLINK) {
       
 19517         promptgroup("20 - Scan")
       
 19518         interest(1)
       
 19519         prompt("Time Stamp Link")
       
 19520     }
       
 19521     field(DTYP, DBF_DEVICE) {
       
 19522         prompt("Device Type")
       
 19523         promptgroup("10 - Common")
       
 19524         interest(1)
       
 19525     }
       
 19526     field(DISV, DBF_SHORT) {
       
 19527         promptgroup("20 - Scan")
       
 19528         prompt("Disable Value")
       
 19529         initial("1")
       
 19530     }
       
 19531     field(DISA, DBF_SHORT) {
       
 19532         prompt("Disable")
       
 19533     }
       
 19534     field(SDIS, DBF_INLINK) {
       
 19535         promptgroup("20 - Scan")
       
 19536         interest(1)
       
 19537         prompt("Scanning Disable")
       
 19538     }
       
 19539     field(MLOK, DBF_NOACCESS) {
       
 19540         interest(4)
       
 19541         special(SPC_NOMOD)
       
 19542         extra("epicsMutexId        mlok")
       
 19543         prompt("Monitor lock")
       
 19544     }
       
 19545     field(MLIS, DBF_NOACCESS) {
       
 19546         interest(4)
       
 19547         special(SPC_NOMOD)
       
 19548         prompt("Monitor List")
       
 19549         extra("ELLLIST             mlis")
       
 19550     }
       
 19551     field(BKLNK, DBF_NOACCESS) {
       
 19552         prompt("Backwards link tracking")
       
 19553         extra("ELLLIST             bklnk")
       
 19554         special(SPC_NOMOD)
       
 19555         interest(4)
       
 19556     }
       
 19557     field(DISP, DBF_UCHAR) {
       
 19558         prompt("Disable putField")
       
 19559     }
       
 19560     field(PROC, DBF_UCHAR) {
       
 19561         pp(TRUE)
       
 19562         interest(3)
       
 19563         prompt("Force Processing")
       
 19564     }
       
 19565     field(STAT, DBF_MENU) {
       
 19566         menu(menuAlarmStat)
       
 19567         special(SPC_NOMOD)
       
 19568         prompt("Alarm Status")
       
 19569         initial("UDF")
       
 19570     }
       
 19571     field(SEVR, DBF_MENU) {
       
 19572         special(SPC_NOMOD)
       
 19573         menu(menuAlarmSevr)
       
 19574         prompt("Alarm Severity")
       
 19575     }
       
 19576     field(NSTA, DBF_MENU) {
       
 19577         special(SPC_NOMOD)
       
 19578         menu(menuAlarmStat)
       
 19579         interest(2)
       
 19580         prompt("New Alarm Status")
       
 19581     }
       
 19582     field(NSEV, DBF_MENU) {
       
 19583         prompt("New Alarm Severity")
       
 19584         special(SPC_NOMOD)
       
 19585         menu(menuAlarmSevr)
       
 19586         interest(2)
       
 19587     }
       
 19588     field(ACKS, DBF_MENU) {
       
 19589         special(SPC_NOMOD)
       
 19590         menu(menuAlarmSevr)
       
 19591         interest(2)
       
 19592         prompt("Alarm Ack Severity")
       
 19593     }
       
 19594     field(ACKT, DBF_MENU) {
       
 19595         prompt("Alarm Ack Transient")
       
 19596         initial("YES")
       
 19597         promptgroup("70 - Alarm")
       
 19598         menu(menuYesNo)
       
 19599         interest(2)
       
 19600         special(SPC_NOMOD)
       
 19601     }
       
 19602     field(DISS, DBF_MENU) {
       
 19603         menu(menuAlarmSevr)
       
 19604         interest(1)
       
 19605         promptgroup("70 - Alarm")
       
 19606         prompt("Disable Alarm Sevrty")
       
 19607     }
       
 19608     field(LCNT, DBF_UCHAR) {
       
 19609         special(SPC_NOMOD)
       
 19610         interest(2)
       
 19611         prompt("Lock Count")
       
 19612     }
       
 19613     field(PACT, DBF_UCHAR) {
       
 19614         prompt("Record active")
       
 19615         interest(1)
       
 19616         special(SPC_NOMOD)
       
 19617     }
       
 19618     field(PUTF, DBF_UCHAR) {
       
 19619         prompt("dbPutField process")
       
 19620         special(SPC_NOMOD)
       
 19621         interest(1)
       
 19622     }
       
 19623     field(RPRO, DBF_UCHAR) {
       
 19624         special(SPC_NOMOD)
       
 19625         interest(1)
       
 19626         prompt("Reprocess ")
       
 19627     }
       
 19628     field(ASP, DBF_NOACCESS) {
       
 19629         interest(4)
       
 19630         special(SPC_NOMOD)
       
 19631         prompt("Access Security Pvt")
       
 19632         extra("struct asgMember    *asp")
       
 19633     }
       
 19634     field(PPN, DBF_NOACCESS) {
       
 19635         prompt("pprocessNotify")
       
 19636         extra("struct processNotify *ppn")
       
 19637         special(SPC_NOMOD)
       
 19638         interest(4)
       
 19639     }
       
 19640     field(PPNR, DBF_NOACCESS) {
       
 19641         prompt("pprocessNotifyRecord")
       
 19642         extra("struct processNotifyRecord *ppnr")
       
 19643         interest(4)
       
 19644         special(SPC_NOMOD)
       
 19645     }
       
 19646     field(SPVT, DBF_NOACCESS) {
       
 19647         special(SPC_NOMOD)
       
 19648         interest(4)
       
 19649         prompt("Scan Private")
       
 19650         extra("struct scan_element *spvt")
       
 19651     }
       
 19652     field(RSET, DBF_NOACCESS) {
       
 19653         prompt("Address of RSET")
       
 19654         extra("struct typed_rset   *rset")
       
 19655         special(SPC_NOMOD)
       
 19656         interest(4)
       
 19657     }
       
 19658     field(DSET, DBF_NOACCESS) {
       
 19659         special(SPC_NOMOD)
       
 19660         interest(4)
       
 19661         prompt("DSET address")
       
 19662         extra("struct dset         *dset")
       
 19663     }
       
 19664     field(DPVT, DBF_NOACCESS) {
       
 19665         prompt("Device Private")
       
 19666         extra("void                *dpvt")
       
 19667         interest(4)
       
 19668         special(SPC_NOMOD)
       
 19669     }
       
 19670     field(RDES, DBF_NOACCESS) {
       
 19671         prompt("Address of dbRecordType")
       
 19672         extra("struct dbRecordType *rdes")
       
 19673         interest(4)
       
 19674         special(SPC_NOMOD)
       
 19675     }
       
 19676     field(LSET, DBF_NOACCESS) {
       
 19677         special(SPC_NOMOD)
       
 19678         interest(4)
       
 19679         prompt("Lock Set")
       
 19680         extra("struct lockRecord   *lset")
       
 19681     }
       
 19682     field(PRIO, DBF_MENU) {
       
 19683         special(SPC_SCAN)
       
 19684         interest(1)
       
 19685         menu(menuPriority)
       
 19686         promptgroup("20 - Scan")
       
 19687         prompt("Scheduling Priority")
       
 19688     }
       
 19689     field(TPRO, DBF_UCHAR) {
       
 19690         prompt("Trace Processing")
       
 19691     }
       
 19692     field(BKPT, DBF_NOACCESS) {
       
 19693         prompt("Break Point")
       
 19694         extra("char                bkpt")
       
 19695         interest(1)
       
 19696         special(SPC_NOMOD)
       
 19697     }
       
 19698     field(UDF, DBF_UCHAR) {
       
 19699         prompt("Undefined")
       
 19700         initial("1")
       
 19701         promptgroup("10 - Common")
       
 19702         pp(TRUE)
       
 19703         interest(1)
       
 19704     }
       
 19705     field(UDFS, DBF_MENU) {
       
 19706         promptgroup("70 - Alarm")
       
 19707         interest(1)
       
 19708         menu(menuAlarmSevr)
       
 19709         prompt("Undefined Alarm Sevrty")
       
 19710         initial("INVALID")
       
 19711     }
       
 19712     field(TIME, DBF_NOACCESS) {
       
 19713         interest(2)
       
 19714         special(SPC_NOMOD)
       
 19715         extra("epicsTimeStamp      time")
       
 19716         prompt("Time")
       
 19717     }
       
 19718     field(FLNK, DBF_FWDLINK) {
       
 19719         prompt("Forward Process Link")
       
 19720         promptgroup("20 - Scan")
       
 19721         interest(1)
       
 19722     }
       
 19723     field(VAL, DBF_STRING) {
       
 19724         promptgroup("50 - Output")
       
 19725         pp(TRUE)
       
 19726         asl(ASL0)
       
 19727         size(40)
       
 19728         prompt("Current Value")
       
 19729     }
       
 19730     field(OVAL, DBF_STRING) {
       
 19731         prompt("Previous Value")
       
 19732         size(40)
       
 19733         interest(3)
       
 19734         special(SPC_NOMOD)
       
 19735     }
       
 19736     field(DOL, DBF_INLINK) {
       
 19737         prompt("Desired Output Loc")
       
 19738         interest(1)
       
 19739         promptgroup("40 - Input")
       
 19740     }
       
 19741     field(OMSL, DBF_MENU) {
       
 19742         promptgroup("50 - Output")
       
 19743         menu(menuOmsl)
       
 19744         interest(1)
       
 19745         prompt("Output Mode Select")
       
 19746     }
       
 19747     field(OUT, DBF_OUTLINK) {
       
 19748         interest(1)
       
 19749         promptgroup("50 - Output")
       
 19750         prompt("Output Specification")
       
 19751     }
       
 19752     field(MPST, DBF_MENU) {
       
 19753         promptgroup("80 - Display")
       
 19754         menu(stringoutPOST)
       
 19755         interest(1)
       
 19756         prompt("Post Value Monitors")
       
 19757     }
       
 19758     field(APST, DBF_MENU) {
       
 19759         menu(stringoutPOST)
       
 19760         interest(1)
       
 19761         promptgroup("80 - Display")
       
 19762         prompt("Post Archive Monitors")
       
 19763     }
       
 19764     field(SIOL, DBF_OUTLINK) {
       
 19765         interest(1)
       
 19766         promptgroup("90 - Simulate")
       
 19767         prompt("Simulation Output Link")
       
 19768     }
       
 19769     field(SIML, DBF_INLINK) {
       
 19770         interest(1)
       
 19771         promptgroup("90 - Simulate")
       
 19772         prompt("Simulation Mode Link")
       
 19773     }
       
 19774     field(SIMM, DBF_MENU) {
       
 19775         prompt("Simulation Mode")
       
 19776         menu(menuYesNo)
       
 19777         interest(1)
       
 19778         special(SPC_MOD)
       
 19779     }
       
 19780     field(SIMS, DBF_MENU) {
       
 19781         prompt("Simulation Mode Severity")
       
 19782         menu(menuAlarmSevr)
       
 19783         interest(2)
       
 19784         promptgroup("90 - Simulate")
       
 19785     }
       
 19786     field(OLDSIMM, DBF_MENU) {
       
 19787         prompt("Prev. Simulation Mode")
       
 19788         menu(menuSimm)
       
 19789         interest(4)
       
 19790         special(SPC_NOMOD)
       
 19791     }
       
 19792     field(SSCN, DBF_MENU) {
       
 19793         interest(1)
       
 19794         menu(menuScan)
       
 19795         promptgroup("90 - Simulate")
       
 19796         initial("65535")
       
 19797         prompt("Sim. Mode Scan")
       
 19798     }
       
 19799     field(SDLY, DBF_DOUBLE) {
       
 19800         prompt("Sim. Mode Async Delay")
       
 19801         initial("-1.0")
       
 19802         promptgroup("90 - Simulate")
       
 19803         interest(2)
       
 19804     }
       
 19805     field(SIMPVT, DBF_NOACCESS) {
       
 19806         prompt("Sim. Mode Private")
       
 19807         extra("CALLBACK            *simpvt")
       
 19808         special(SPC_NOMOD)
       
 19809         interest(4)
       
 19810     }
       
 19811     field(IVOA, DBF_MENU) {
       
 19812         promptgroup("50 - Output")
       
 19813         menu(menuIvoa)
       
 19814         interest(2)
       
 19815         prompt("INVALID output action")
       
 19816     }
       
 19817     field(IVOV, DBF_STRING) {
       
 19818         size(40)
       
 19819         prompt("INVALID output value")
       
 19820         interest(2)
       
 19821         promptgroup("50 - Output")
       
 19822     }
       
 19823 }
       
 19824 device(stringout, CONSTANT, devSoSoft, "Soft Channel")
       
 19825 device(stringout, CONSTANT, devSoSoftCallback, "Async Soft Channel")
       
 19826 device(stringout, INST_IO, devSoStdio, "stdio")
       
 19827 device(stringout, INST_IO, asynSoOctetWrite, "asynOctetWrite")
       
 19828 device(stringout, INST_IO, devstringoutStream, "stream")
       
 19829 device(stringout, INST_IO, devSoStrParm, "asyn so stringParm")
       
 19830 device(stringout, INST_IO, devSoEurotherm, "asyn so Eurotherm")
       
 19831 device(stringout, INST_IO, devSoMPC, "asyn MPC")
       
 19832 recordtype(lso) {
       
 19833     %#include "epicsTypes.h"
       
 19834     %#include "link.h"
       
 19835     %#include "epicsMutex.h"
       
 19836     %#include "ellLib.h"
       
 19837     %#include "epicsTime.h"
       
 19838     %#include "devSup.h"
       
 19839     %
       
 19840     %/* Declare Device Support Entry Table */
       
 19841     %typedef struct lsodset {
       
 19842     %    long number;
       
 19843     %    DEVSUPFUN report;
       
 19844     %    DEVSUPFUN init;
       
 19845     %    DEVSUPFUN init_record;
       
 19846     %    DEVSUPFUN get_ioint_info;
       
 19847     %    DEVSUPFUN write_string;
       
 19848     %} lsodset;
       
 19849     %
       
 19850     %#include "callback.h"
       
 19851     field(NAME, DBF_STRING) {
       
 19852         special(SPC_NOMOD)
       
 19853         size(61)
       
 19854         prompt("Record Name")
       
 19855     }
       
 19856     field(DESC, DBF_STRING) {
       
 19857         prompt("Descriptor")
       
 19858         size(41)
       
 19859         promptgroup("10 - Common")
       
 19860     }
       
 19861     field(ASG, DBF_STRING) {
       
 19862         special(SPC_AS)
       
 19863         promptgroup("10 - Common")
       
 19864         size(29)
       
 19865         prompt("Access Security Group")
       
 19866     }
       
 19867     field(SCAN, DBF_MENU) {
       
 19868         menu(menuScan)
       
 19869         interest(1)
       
 19870         special(SPC_SCAN)
       
 19871         promptgroup("20 - Scan")
       
 19872         prompt("Scan Mechanism")
       
 19873     }
       
 19874     field(PINI, DBF_MENU) {
 11061         prompt("Process at iocInit")
 19875         prompt("Process at iocInit")
 11062         menu(menuPini)
 19876         menu(menuPini)
       
 19877         interest(1)
       
 19878         promptgroup("20 - Scan")
 11063     }
 19879     }
 11064     field(PHAS, DBF_SHORT) {
 19880     field(PHAS, DBF_SHORT) {
 11065         prompt("Scan Phase")
 19881         prompt("Scan Phase")
       
 19882         promptgroup("20 - Scan")
       
 19883         interest(1)
 11066         special(SPC_SCAN)
 19884         special(SPC_SCAN)
 11067         interest(1)
       
 11068         promptgroup("20 - Scan")
       
 11069     }
 19885     }
 11070     field(EVNT, DBF_STRING) {
 19886     field(EVNT, DBF_STRING) {
       
 19887         size(40)
       
 19888         prompt("Event Name")
 11071         interest(1)
 19889         interest(1)
 11072         special(SPC_SCAN)
 19890         special(SPC_SCAN)
 11073         promptgroup("20 - Scan")
 19891         promptgroup("20 - Scan")
 11074         prompt("Event Name")
       
 11075         size(40)
       
 11076     }
 19892     }
 11077     field(TSE, DBF_SHORT) {
 19893     field(TSE, DBF_SHORT) {
 11078         prompt("Time Stamp Event")
 19894         prompt("Time Stamp Event")
 11079         promptgroup("20 - Scan")
 19895         promptgroup("20 - Scan")
 11080         interest(1)
 19896         interest(1)
 11081     }
 19897     }
 11082     field(TSEL, DBF_INLINK) {
 19898     field(TSEL, DBF_INLINK) {
 11083         interest(1)
       
 11084         promptgroup("20 - Scan")
       
 11085         prompt("Time Stamp Link")
 19899         prompt("Time Stamp Link")
       
 19900         promptgroup("20 - Scan")
       
 19901         interest(1)
 11086     }
 19902     }
 11087     field(DTYP, DBF_DEVICE) {
 19903     field(DTYP, DBF_DEVICE) {
 11088         prompt("Device Type")
 19904         prompt("Device Type")
 11089         interest(1)
 19905         interest(1)
 11090         promptgroup("10 - Common")
 19906         promptgroup("10 - Common")
 11091     }
 19907     }
 11092     field(DISV, DBF_SHORT) {
 19908     field(DISV, DBF_SHORT) {
 11093         initial("1")
       
 11094         promptgroup("20 - Scan")
       
 11095         prompt("Disable Value")
 19909         prompt("Disable Value")
       
 19910         initial("1")
       
 19911         promptgroup("20 - Scan")
 11096     }
 19912     }
 11097     field(DISA, DBF_SHORT) {
 19913     field(DISA, DBF_SHORT) {
 11098         prompt("Disable")
 19914         prompt("Disable")
 11099     }
 19915     }
 11100     field(SDIS, DBF_INLINK) {
 19916     field(SDIS, DBF_INLINK) {
       
 19917         promptgroup("20 - Scan")
       
 19918         interest(1)
 11101         prompt("Scanning Disable")
 19919         prompt("Scanning Disable")
 11102         promptgroup("20 - Scan")
       
 11103         interest(1)
       
 11104     }
 19920     }
 11105     field(MLOK, DBF_NOACCESS) {
 19921     field(MLOK, DBF_NOACCESS) {
       
 19922         prompt("Monitor lock")
 11106         extra("epicsMutexId        mlok")
 19923         extra("epicsMutexId        mlok")
 11107         prompt("Monitor lock")
       
 11108         interest(4)
 19924         interest(4)
 11109         special(SPC_NOMOD)
 19925         special(SPC_NOMOD)
 11110     }
 19926     }
 11111     field(MLIS, DBF_NOACCESS) {
 19927     field(MLIS, DBF_NOACCESS) {
 11112         prompt("Monitor List")
 19928         prompt("Monitor List")
 11113         interest(4)
       
 11114         special(SPC_NOMOD)
       
 11115         extra("ELLLIST             mlis")
 19929         extra("ELLLIST             mlis")
       
 19930         interest(4)
       
 19931         special(SPC_NOMOD)
 11116     }
 19932     }
 11117     field(BKLNK, DBF_NOACCESS) {
 19933     field(BKLNK, DBF_NOACCESS) {
       
 19934         extra("ELLLIST             bklnk")
 11118         prompt("Backwards link tracking")
 19935         prompt("Backwards link tracking")
 11119         special(SPC_NOMOD)
 19936         interest(4)
 11120         interest(4)
 19937         special(SPC_NOMOD)
 11121         extra("ELLLIST             bklnk")
       
 11122     }
 19938     }
 11123     field(DISP, DBF_UCHAR) {
 19939     field(DISP, DBF_UCHAR) {
 11124         prompt("Disable putField")
 19940         prompt("Disable putField")
 11125     }
 19941     }
 11126     field(PROC, DBF_UCHAR) {
 19942     field(PROC, DBF_UCHAR) {
       
 19943         interest(3)
       
 19944         pp(TRUE)
 11127         prompt("Force Processing")
 19945         prompt("Force Processing")
 11128         interest(3)
       
 11129         pp(TRUE)
       
 11130     }
 19946     }
 11131     field(STAT, DBF_MENU) {
 19947     field(STAT, DBF_MENU) {
       
 19948         prompt("Alarm Status")
 11132         initial("UDF")
 19949         initial("UDF")
 11133         menu(menuAlarmStat)
 19950         menu(menuAlarmStat)
 11134         prompt("Alarm Status")
       
 11135         special(SPC_NOMOD)
 19951         special(SPC_NOMOD)
 11136     }
 19952     }
 11137     field(SEVR, DBF_MENU) {
 19953     field(SEVR, DBF_MENU) {
 11138         prompt("Alarm Severity")
 19954         prompt("Alarm Severity")
 11139         special(SPC_NOMOD)
 19955         special(SPC_NOMOD)
 11140         menu(menuAlarmSevr)
 19956         menu(menuAlarmSevr)
 11141     }
 19957     }
 11142     field(NSTA, DBF_MENU) {
 19958     field(NSTA, DBF_MENU) {
       
 19959         prompt("New Alarm Status")
       
 19960         special(SPC_NOMOD)
       
 19961         interest(2)
 11143         menu(menuAlarmStat)
 19962         menu(menuAlarmStat)
 11144         prompt("New Alarm Status")
       
 11145         special(SPC_NOMOD)
       
 11146         interest(2)
       
 11147     }
 19963     }
 11148     field(NSEV, DBF_MENU) {
 19964     field(NSEV, DBF_MENU) {
 11149         interest(2)
       
 11150         special(SPC_NOMOD)
       
 11151         prompt("New Alarm Severity")
 19965         prompt("New Alarm Severity")
 11152         menu(menuAlarmSevr)
 19966         interest(2)
       
 19967         menu(menuAlarmSevr)
       
 19968         special(SPC_NOMOD)
 11153     }
 19969     }
 11154     field(ACKS, DBF_MENU) {
 19970     field(ACKS, DBF_MENU) {
 11155         interest(2)
       
 11156         special(SPC_NOMOD)
       
 11157         prompt("Alarm Ack Severity")
 19971         prompt("Alarm Ack Severity")
 11158         menu(menuAlarmSevr)
 19972         special(SPC_NOMOD)
       
 19973         menu(menuAlarmSevr)
       
 19974         interest(2)
 11159     }
 19975     }
 11160     field(ACKT, DBF_MENU) {
 19976     field(ACKT, DBF_MENU) {
       
 19977         prompt("Alarm Ack Transient")
 11161         initial("YES")
 19978         initial("YES")
       
 19979         promptgroup("70 - Alarm")
 11162         menu(menuYesNo)
 19980         menu(menuYesNo)
 11163         interest(2)
 19981         interest(2)
 11164         promptgroup("70 - Alarm")
 19982         special(SPC_NOMOD)
 11165         special(SPC_NOMOD)
       
 11166         prompt("Alarm Ack Transient")
       
 11167     }
 19983     }
 11168     field(DISS, DBF_MENU) {
 19984     field(DISS, DBF_MENU) {
 11169         menu(menuAlarmSevr)
 19985         promptgroup("70 - Alarm")
 11170         promptgroup("70 - Alarm")
 19986         menu(menuAlarmSevr)
 11171         interest(1)
 19987         interest(1)
 11172         prompt("Disable Alarm Sevrty")
 19988         prompt("Disable Alarm Sevrty")
 11173     }
 19989     }
 11174     field(LCNT, DBF_UCHAR) {
 19990     field(LCNT, DBF_UCHAR) {
 11175         interest(2)
 19991         special(SPC_NOMOD)
 11176         special(SPC_NOMOD)
 19992         interest(2)
 11177         prompt("Lock Count")
 19993         prompt("Lock Count")
 11178     }
 19994     }
 11179     field(PACT, DBF_UCHAR) {
 19995     field(PACT, DBF_UCHAR) {
 11180         prompt("Record active")
 19996         prompt("Record active")
 11181         special(SPC_NOMOD)
 19997         interest(1)
 11182         interest(1)
 19998         special(SPC_NOMOD)
 11183     }
 19999     }
 11184     field(PUTF, DBF_UCHAR) {
 20000     field(PUTF, DBF_UCHAR) {
 11185         interest(1)
 20001         interest(1)
 11186         special(SPC_NOMOD)
 20002         special(SPC_NOMOD)
 11187         prompt("dbPutField process")
 20003         prompt("dbPutField process")
 11188     }
 20004     }
 11189     field(RPRO, DBF_UCHAR) {
 20005     field(RPRO, DBF_UCHAR) {
       
 20006         interest(1)
       
 20007         special(SPC_NOMOD)
 11190         prompt("Reprocess ")
 20008         prompt("Reprocess ")
 11191         special(SPC_NOMOD)
       
 11192         interest(1)
       
 11193     }
 20009     }
 11194     field(ASP, DBF_NOACCESS) {
 20010     field(ASP, DBF_NOACCESS) {
       
 20011         interest(4)
       
 20012         special(SPC_NOMOD)
 11195         extra("struct asgMember    *asp")
 20013         extra("struct asgMember    *asp")
 11196         prompt("Access Security Pvt")
 20014         prompt("Access Security Pvt")
 11197         interest(4)
       
 11198         special(SPC_NOMOD)
       
 11199     }
 20015     }
 11200     field(PPN, DBF_NOACCESS) {
 20016     field(PPN, DBF_NOACCESS) {
 11201         extra("struct processNotify *ppn")
 20017         extra("struct processNotify *ppn")
 11202         prompt("pprocessNotify")
 20018         prompt("pprocessNotify")
 11203         interest(4)
 20019         interest(4)
 11204         special(SPC_NOMOD)
 20020         special(SPC_NOMOD)
 11205     }
 20021     }
 11206     field(PPNR, DBF_NOACCESS) {
 20022     field(PPNR, DBF_NOACCESS) {
       
 20023         interest(4)
       
 20024         special(SPC_NOMOD)
       
 20025         extra("struct processNotifyRecord *ppnr")
 11207         prompt("pprocessNotifyRecord")
 20026         prompt("pprocessNotifyRecord")
 11208         interest(4)
       
 11209         special(SPC_NOMOD)
       
 11210         extra("struct processNotifyRecord *ppnr")
       
 11211     }
 20027     }
 11212     field(SPVT, DBF_NOACCESS) {
 20028     field(SPVT, DBF_NOACCESS) {
 11213         extra("struct scan_element *spvt")
 20029         extra("struct scan_element *spvt")
 11214         prompt("Scan Private")
 20030         prompt("Scan Private")
 11215         interest(4)
 20031         interest(4)
 11220         prompt("Address of RSET")
 20036         prompt("Address of RSET")
 11221         special(SPC_NOMOD)
 20037         special(SPC_NOMOD)
 11222         interest(4)
 20038         interest(4)
 11223     }
 20039     }
 11224     field(DSET, DBF_NOACCESS) {
 20040     field(DSET, DBF_NOACCESS) {
       
 20041         prompt("DSET address")
 11225         extra("struct dset         *dset")
 20042         extra("struct dset         *dset")
 11226         interest(4)
 20043         special(SPC_NOMOD)
 11227         special(SPC_NOMOD)
 20044         interest(4)
 11228         prompt("DSET address")
       
 11229     }
 20045     }
 11230     field(DPVT, DBF_NOACCESS) {
 20046     field(DPVT, DBF_NOACCESS) {
       
 20047         prompt("Device Private")
 11231         extra("void                *dpvt")
 20048         extra("void                *dpvt")
 11232         interest(4)
 20049         interest(4)
 11233         special(SPC_NOMOD)
 20050         special(SPC_NOMOD)
 11234         prompt("Device Private")
       
 11235     }
 20051     }
 11236     field(RDES, DBF_NOACCESS) {
 20052     field(RDES, DBF_NOACCESS) {
 11237         extra("struct dbRecordType *rdes")
 20053         extra("struct dbRecordType *rdes")
 11238         interest(4)
       
 11239         special(SPC_NOMOD)
       
 11240         prompt("Address of dbRecordType")
 20054         prompt("Address of dbRecordType")
       
 20055         special(SPC_NOMOD)
       
 20056         interest(4)
 11241     }
 20057     }
 11242     field(LSET, DBF_NOACCESS) {
 20058     field(LSET, DBF_NOACCESS) {
       
 20059         interest(4)
       
 20060         special(SPC_NOMOD)
 11243         extra("struct lockRecord   *lset")
 20061         extra("struct lockRecord   *lset")
 11244         prompt("Lock Set")
 20062         prompt("Lock Set")
 11245         special(SPC_NOMOD)
       
 11246         interest(4)
       
 11247     }
 20063     }
 11248     field(PRIO, DBF_MENU) {
 20064     field(PRIO, DBF_MENU) {
       
 20065         promptgroup("20 - Scan")
       
 20066         interest(1)
 11249         menu(menuPriority)
 20067         menu(menuPriority)
       
 20068         special(SPC_SCAN)
 11250         prompt("Scheduling Priority")
 20069         prompt("Scheduling Priority")
 11251         special(SPC_SCAN)
       
 11252         interest(1)
       
 11253         promptgroup("20 - Scan")
       
 11254     }
 20070     }
 11255     field(TPRO, DBF_UCHAR) {
 20071     field(TPRO, DBF_UCHAR) {
 11256         prompt("Trace Processing")
 20072         prompt("Trace Processing")
 11257     }
 20073     }
 11258     field(BKPT, DBF_NOACCESS) {
 20074     field(BKPT, DBF_NOACCESS) {
       
 20075         extra("char                bkpt")
 11259         prompt("Break Point")
 20076         prompt("Break Point")
 11260         interest(1)
 20077         special(SPC_NOMOD)
 11261         special(SPC_NOMOD)
 20078         interest(1)
 11262         extra("char                bkpt")
       
 11263     }
 20079     }
 11264     field(UDF, DBF_UCHAR) {
 20080     field(UDF, DBF_UCHAR) {
 11265         interest(1)
       
 11266         promptgroup("10 - Common")
       
 11267         prompt("Undefined")
 20081         prompt("Undefined")
 11268         pp(TRUE)
 20082         initial("1")
 11269         initial("1")
 20083         pp(TRUE)
       
 20084         promptgroup("10 - Common")
       
 20085         interest(1)
 11270     }
 20086     }
 11271     field(UDFS, DBF_MENU) {
 20087     field(UDFS, DBF_MENU) {
       
 20088         menu(menuAlarmSevr)
       
 20089         interest(1)
       
 20090         promptgroup("70 - Alarm")
 11272         initial("INVALID")
 20091         initial("INVALID")
 11273         interest(1)
       
 11274         promptgroup("70 - Alarm")
       
 11275         prompt("Undefined Alarm Sevrty")
 20092         prompt("Undefined Alarm Sevrty")
 11276         menu(menuAlarmSevr)
       
 11277     }
 20093     }
 11278     field(TIME, DBF_NOACCESS) {
 20094     field(TIME, DBF_NOACCESS) {
       
 20095         interest(2)
       
 20096         special(SPC_NOMOD)
 11279         extra("epicsTimeStamp      time")
 20097         extra("epicsTimeStamp      time")
 11280         interest(2)
       
 11281         special(SPC_NOMOD)
       
 11282         prompt("Time")
 20098         prompt("Time")
 11283     }
 20099     }
 11284     field(FLNK, DBF_FWDLINK) {
 20100     field(FLNK, DBF_FWDLINK) {
 11285         prompt("Forward Process Link")
 20101         prompt("Forward Process Link")
 11286         promptgroup("20 - Scan")
 20102         promptgroup("20 - Scan")
 11287         interest(1)
 20103         interest(1)
 11288     }
 20104     }
 11289     field(VAL, DBF_LONG) {
 20105     field(VAL, DBF_NOACCESS) {
 11290         prompt("Subr. return value")
 20106         pp(TRUE)
       
 20107         special(SPC_DBADDR)
       
 20108         prompt("Current Value")
 11291         asl(ASL0)
 20109         asl(ASL0)
 11292     }
 20110         extra("char *val")
 11293     field(OVAL, DBF_LONG) {
 20111     }
 11294         interest(3)
 20112     field(OVAL, DBF_NOACCESS) {
 11295         special(SPC_NOMOD)
 20113         prompt("Previous Value")
 11296         prompt("Old return value")
 20114         extra("char *oval")
 11297     }
 20115         special(SPC_DBADDR)
 11298     field(INAM, DBF_STRING) {
 20116         interest(3)
 11299         size(41)
 20117     }
 11300         special(SPC_NOMOD)
 20118     field(SIZV, DBF_USHORT) {
 11301         interest(1)
 20119         initial("41")
 11302         promptgroup("30 - Action")
 20120         prompt("Size of buffers")
 11303         prompt("Initialize Subr. Name")
 20121         interest(1)
 11304     }
 20122         special(SPC_NOMOD)
 11305     field(LFLG, DBF_MENU) {
 20123         promptgroup("50 - Output")
 11306         interest(1)
 20124     }
 11307         promptgroup("30 - Action")
 20125     field(LEN, DBF_ULONG) {
 11308         prompt("Subr. Input Enable")
 20126         prompt("Length of VAL")
 11309         menu(aSubLFLG)
 20127         special(SPC_NOMOD)
 11310     }
 20128     }
 11311     field(SUBL, DBF_INLINK) {
 20129     field(OLEN, DBF_ULONG) {
 11312         prompt("Subroutine Name Link")
 20130         special(SPC_NOMOD)
 11313         interest(1)
 20131         interest(3)
 11314         special(SPC_NOMOD)
 20132         prompt("Length of OVAL")
 11315         promptgroup("30 - Action")
 20133     }
 11316     }
 20134     field(DOL, DBF_INLINK) {
 11317     field(SNAM, DBF_STRING) {
 20135         prompt("Desired Output Link")
 11318         interest(1)
 20136         interest(1)
 11319         promptgroup("30 - Action")
 20137         promptgroup("40 - Input")
 11320         special(SPC_MOD)
 20138     }
 11321         prompt("Process Subr. Name")
 20139     field(IVOA, DBF_MENU) {
 11322         size(41)
 20140         promptgroup("50 - Output")
 11323     }
 20141         interest(2)
 11324     field(ONAM, DBF_STRING) {
 20142         menu(menuIvoa)
 11325         promptgroup("30 - Action")
 20143         prompt("INVALID Output Action")
 11326         interest(3)
 20144     }
 11327         special(SPC_NOMOD)
 20145     field(IVOV, DBF_STRING) {
 11328         prompt("Old Subr. Name")
 20146         interest(2)
 11329         size(41)
 20147         promptgroup("50 - Output")
 11330     }
 20148         size(40)
 11331     field(SADR, DBF_NOACCESS) {
 20149         prompt("INVALID Output Value")
 11332         extra("long (*sadr)(struct aSubRecord *)")
 20150     }
 11333         special(SPC_NOMOD)
 20151     field(OMSL, DBF_MENU) {
 11334         interest(2)
 20152         promptgroup("50 - Output")
 11335         prompt("Subroutine Address")
 20153         menu(menuOmsl)
 11336     }
 20154         interest(1)
 11337     field(CADR, DBF_NOACCESS) {
 20155         prompt("Output Mode Select")
 11338         prompt("Subroutine Cleanup Address")
 20156     }
 11339         special(SPC_NOMOD)
 20157     field(OUT, DBF_OUTLINK) {
 11340         interest(2)
 20158         prompt("Output Specification")
 11341         extra("void (*cadr)(struct aSubRecord *)")
 20159         promptgroup("50 - Output")
 11342     }
 20160         interest(1)
 11343     field(BRSV, DBF_MENU) {
 20161     }
 11344         interest(1)
 20162     field(MPST, DBF_MENU) {
 11345         promptgroup("70 - Alarm")
       
 11346         prompt("Bad Return Severity")
       
 11347         menu(menuAlarmSevr)
       
 11348         pp(TRUE)
       
 11349     }
       
 11350     field(PREC, DBF_SHORT) {
       
 11351         interest(1)
       
 11352         prop(YES)
       
 11353         promptgroup("80 - Display")
 20163         promptgroup("80 - Display")
 11354         prompt("Display Precision")
 20164         menu(menuPost)
 11355     }
 20165         interest(1)
 11356     field(EFLG, DBF_MENU) {
 20166         prompt("Post Value Monitors")
 11357         prompt("Output Event Flag")
 20167     }
 11358         interest(1)
 20168     field(APST, DBF_MENU) {
 11359         promptgroup("50 - Output")
 20169         interest(1)
 11360         menu(aSubEFLG)
 20170         menu(menuPost)
 11361         initial("1")
 20171         promptgroup("80 - Display")
 11362     }
 20172         prompt("Post Archive Monitors")
 11363     field(INPA, DBF_INLINK) {
 20173     }
 11364         promptgroup("41 - Input A-G")
 20174     field(SIML, DBF_INLINK) {
 11365         interest(1)
 20175         interest(1)
 11366         prompt("Input Link A")
 20176         promptgroup("90 - Simulate")
 11367     }
 20177         prompt("Simulation Mode link")
 11368     field(INPB, DBF_INLINK) {
 20178     }
 11369         prompt("Input Link B")
 20179     field(SIMM, DBF_MENU) {
 11370         promptgroup("41 - Input A-G")
 20180         interest(1)
 11371         interest(1)
 20181         menu(menuYesNo)
 11372     }
 20182         special(SPC_MOD)
 11373     field(INPC, DBF_INLINK) {
 20183         prompt("Simulation Mode")
 11374         prompt("Input Link C")
 20184     }
 11375         interest(1)
 20185     field(SIMS, DBF_MENU) {
 11376         promptgroup("41 - Input A-G")
 20186         prompt("Simulation Mode Severity")
 11377     }
 20187         menu(menuAlarmSevr)
 11378     field(INPD, DBF_INLINK) {
 20188         interest(2)
 11379         prompt("Input Link D")
 20189         promptgroup("90 - Simulate")
 11380         interest(1)
 20190     }
 11381         promptgroup("41 - Input A-G")
 20191     field(SIOL, DBF_OUTLINK) {
 11382     }
 20192         prompt("Simulation Output Link")
 11383     field(INPE, DBF_INLINK) {
 20193         promptgroup("90 - Simulate")
 11384         promptgroup("41 - Input A-G")
 20194         interest(1)
 11385         interest(1)
 20195     }
 11386         prompt("Input Link E")
 20196     field(OLDSIMM, DBF_MENU) {
 11387     }
 20197         special(SPC_NOMOD)
 11388     field(INPF, DBF_INLINK) {
 20198         menu(menuSimm)
 11389         prompt("Input Link F")
 20199         interest(4)
 11390         promptgroup("41 - Input A-G")
 20200         prompt("Prev. Simulation Mode")
 11391         interest(1)
 20201     }
 11392     }
 20202     field(SSCN, DBF_MENU) {
 11393     field(INPG, DBF_INLINK) {
 20203         promptgroup("90 - Simulate")
 11394         promptgroup("41 - Input A-G")
 20204         interest(1)
 11395         interest(1)
 20205         menu(menuScan)
 11396         prompt("Input Link G")
 20206         prompt("Sim. Mode Scan")
 11397     }
 20207         initial("65535")
 11398     field(INPH, DBF_INLINK) {
 20208     }
 11399         prompt("Input Link H")
 20209     field(SDLY, DBF_DOUBLE) {
 11400         promptgroup("42 - Input H-N")
 20210         promptgroup("90 - Simulate")
 11401         interest(1)
 20211         interest(2)
 11402     }
 20212         prompt("Sim. Mode Async Delay")
 11403     field(INPI, DBF_INLINK) {
 20213         initial("-1.0")
 11404         prompt("Input Link I")
 20214     }
 11405         interest(1)
 20215     field(SIMPVT, DBF_NOACCESS) {
 11406         promptgroup("42 - Input H-N")
 20216         special(SPC_NOMOD)
 11407     }
 20217         interest(4)
 11408     field(INPJ, DBF_INLINK) {
 20218         prompt("Sim. Mode Private")
 11409         promptgroup("42 - Input H-N")
 20219         extra("CALLBACK            *simpvt")
 11410         interest(1)
       
 11411         prompt("Input Link J")
       
 11412     }
       
 11413     field(INPK, DBF_INLINK) {
       
 11414         interest(1)
       
 11415         promptgroup("42 - Input H-N")
       
 11416         prompt("Input Link K")
       
 11417     }
       
 11418     field(INPL, DBF_INLINK) {
       
 11419         prompt("Input Link L")
       
 11420         promptgroup("42 - Input H-N")
       
 11421         interest(1)
       
 11422     }
       
 11423     field(INPM, DBF_INLINK) {
       
 11424         interest(1)
       
 11425         promptgroup("42 - Input H-N")
       
 11426         prompt("Input Link M")
       
 11427     }
       
 11428     field(INPN, DBF_INLINK) {
       
 11429         prompt("Input Link N")
       
 11430         interest(1)
       
 11431         promptgroup("42 - Input H-N")
       
 11432     }
       
 11433     field(INPO, DBF_INLINK) {
       
 11434         promptgroup("43 - Input O-U")
       
 11435         interest(1)
       
 11436         prompt("Input Link O")
       
 11437     }
       
 11438     field(INPP, DBF_INLINK) {
       
 11439         prompt("Input Link P")
       
 11440         interest(1)
       
 11441         promptgroup("43 - Input O-U")
       
 11442     }
       
 11443     field(INPQ, DBF_INLINK) {
       
 11444         prompt("Input Link Q")
       
 11445         promptgroup("43 - Input O-U")
       
 11446         interest(1)
       
 11447     }
       
 11448     field(INPR, DBF_INLINK) {
       
 11449         promptgroup("43 - Input O-U")
       
 11450         interest(1)
       
 11451         prompt("Input Link R")
       
 11452     }
       
 11453     field(INPS, DBF_INLINK) {
       
 11454         interest(1)
       
 11455         promptgroup("43 - Input O-U")
       
 11456         prompt("Input Link S")
       
 11457     }
       
 11458     field(INPT, DBF_INLINK) {
       
 11459         promptgroup("43 - Input O-U")
       
 11460         interest(1)
       
 11461         prompt("Input Link T")
       
 11462     }
       
 11463     field(INPU, DBF_INLINK) {
       
 11464         prompt("Input Link U")
       
 11465         promptgroup("43 - Input O-U")
       
 11466         interest(1)
       
 11467     }
       
 11468     field(A, DBF_NOACCESS) {
       
 11469         asl(ASL0)
       
 11470         prompt("Input value A")
       
 11471         special(SPC_DBADDR)
       
 11472         interest(2)
       
 11473         extra("void *a")
       
 11474     }
       
 11475     field(B, DBF_NOACCESS) {
       
 11476         extra("void *b")
       
 11477         prompt("Input value B")
       
 11478         special(SPC_DBADDR)
       
 11479         interest(2)
       
 11480         asl(ASL0)
       
 11481     }
       
 11482     field(C, DBF_NOACCESS) {
       
 11483         extra("void *c")
       
 11484         special(SPC_DBADDR)
       
 11485         interest(2)
       
 11486         prompt("Input value C")
       
 11487         asl(ASL0)
       
 11488     }
       
 11489     field(D, DBF_NOACCESS) {
       
 11490         asl(ASL0)
       
 11491         interest(2)
       
 11492         special(SPC_DBADDR)
       
 11493         prompt("Input value D")
       
 11494         extra("void *d")
       
 11495     }
       
 11496     field(E, DBF_NOACCESS) {
       
 11497         extra("void *e")
       
 11498         asl(ASL0)
       
 11499         interest(2)
       
 11500         special(SPC_DBADDR)
       
 11501         prompt("Input value E")
       
 11502     }
       
 11503     field(F, DBF_NOACCESS) {
       
 11504         prompt("Input value F")
       
 11505         special(SPC_DBADDR)
       
 11506         interest(2)
       
 11507         asl(ASL0)
       
 11508         extra("void *f")
       
 11509     }
       
 11510     field(G, DBF_NOACCESS) {
       
 11511         asl(ASL0)
       
 11512         interest(2)
       
 11513         special(SPC_DBADDR)
       
 11514         prompt("Input value G")
       
 11515         extra("void *g")
       
 11516     }
       
 11517     field(H, DBF_NOACCESS) {
       
 11518         asl(ASL0)
       
 11519         interest(2)
       
 11520         special(SPC_DBADDR)
       
 11521         prompt("Input value H")
       
 11522         extra("void *h")
       
 11523     }
       
 11524     field(I, DBF_NOACCESS) {
       
 11525         special(SPC_DBADDR)
       
 11526         interest(2)
       
 11527         prompt("Input value I")
       
 11528         asl(ASL0)
       
 11529         extra("void *i")
       
 11530     }
       
 11531     field(J, DBF_NOACCESS) {
       
 11532         prompt("Input value J")
       
 11533         special(SPC_DBADDR)
       
 11534         interest(2)
       
 11535         asl(ASL0)
       
 11536         extra("void *j")
       
 11537     }
       
 11538     field(K, DBF_NOACCESS) {
       
 11539         prompt("Input value K")
       
 11540         special(SPC_DBADDR)
       
 11541         interest(2)
       
 11542         asl(ASL0)
       
 11543         extra("void *k")
       
 11544     }
       
 11545     field(L, DBF_NOACCESS) {
       
 11546         extra("void *l")
       
 11547         asl(ASL0)
       
 11548         interest(2)
       
 11549         special(SPC_DBADDR)
       
 11550         prompt("Input value L")
       
 11551     }
       
 11552     field(M, DBF_NOACCESS) {
       
 11553         prompt("Input value M")
       
 11554         interest(2)
       
 11555         special(SPC_DBADDR)
       
 11556         asl(ASL0)
       
 11557         extra("void *m")
       
 11558     }
       
 11559     field(N, DBF_NOACCESS) {
       
 11560         extra("void *n")
       
 11561         asl(ASL0)
       
 11562         prompt("Input value N")
       
 11563         special(SPC_DBADDR)
       
 11564         interest(2)
       
 11565     }
       
 11566     field(O, DBF_NOACCESS) {
       
 11567         extra("void *o")
       
 11568         asl(ASL0)
       
 11569         prompt("Input value O")
       
 11570         special(SPC_DBADDR)
       
 11571         interest(2)
       
 11572     }
       
 11573     field(P, DBF_NOACCESS) {
       
 11574         special(SPC_DBADDR)
       
 11575         interest(2)
       
 11576         prompt("Input value P")
       
 11577         asl(ASL0)
       
 11578         extra("void *p")
       
 11579     }
       
 11580     field(Q, DBF_NOACCESS) {
       
 11581         extra("void *q")
       
 11582         prompt("Input value Q")
       
 11583         special(SPC_DBADDR)
       
 11584         interest(2)
       
 11585         asl(ASL0)
       
 11586     }
       
 11587     field(R, DBF_NOACCESS) {
       
 11588         extra("void *r")
       
 11589         interest(2)
       
 11590         special(SPC_DBADDR)
       
 11591         prompt("Input value R")
       
 11592         asl(ASL0)
       
 11593     }
       
 11594     field(S, DBF_NOACCESS) {
       
 11595         extra("void *s")
       
 11596         prompt("Input value S")
       
 11597         interest(2)
       
 11598         special(SPC_DBADDR)
       
 11599         asl(ASL0)
       
 11600     }
       
 11601     field(T, DBF_NOACCESS) {
       
 11602         asl(ASL0)
       
 11603         interest(2)
       
 11604         special(SPC_DBADDR)
       
 11605         prompt("Input value T")
       
 11606         extra("void *t")
       
 11607     }
       
 11608     field(U, DBF_NOACCESS) {
       
 11609         extra("void *u")
       
 11610         asl(ASL0)
       
 11611         prompt("Input value U")
       
 11612         interest(2)
       
 11613         special(SPC_DBADDR)
       
 11614     }
       
 11615     field(FTA, DBF_MENU) {
       
 11616         menu(menuFtype)
       
 11617         interest(1)
       
 11618         special(SPC_NOMOD)
       
 11619         promptgroup("41 - Input A-G")
       
 11620         prompt("Type of A")
       
 11621         initial("DOUBLE")
       
 11622     }
       
 11623     field(FTB, DBF_MENU) {
       
 11624         prompt("Type of B")
       
 11625         interest(1)
       
 11626         promptgroup("41 - Input A-G")
       
 11627         special(SPC_NOMOD)
       
 11628         menu(menuFtype)
       
 11629         initial("DOUBLE")
       
 11630     }
       
 11631     field(FTC, DBF_MENU) {
       
 11632         initial("DOUBLE")
       
 11633         menu(menuFtype)
       
 11634         special(SPC_NOMOD)
       
 11635         interest(1)
       
 11636         promptgroup("41 - Input A-G")
       
 11637         prompt("Type of C")
       
 11638     }
       
 11639     field(FTD, DBF_MENU) {
       
 11640         initial("DOUBLE")
       
 11641         menu(menuFtype)
       
 11642         prompt("Type of D")
       
 11643         interest(1)
       
 11644         promptgroup("41 - Input A-G")
       
 11645         special(SPC_NOMOD)
       
 11646     }
       
 11647     field(FTE, DBF_MENU) {
       
 11648         interest(1)
       
 11649         special(SPC_NOMOD)
       
 11650         promptgroup("41 - Input A-G")
       
 11651         prompt("Type of E")
       
 11652         menu(menuFtype)
       
 11653         initial("DOUBLE")
       
 11654     }
       
 11655     field(FTF, DBF_MENU) {
       
 11656         initial("DOUBLE")
       
 11657         menu(menuFtype)
       
 11658         prompt("Type of F")
       
 11659         interest(1)
       
 11660         promptgroup("41 - Input A-G")
       
 11661         special(SPC_NOMOD)
       
 11662     }
       
 11663     field(FTG, DBF_MENU) {
       
 11664         initial("DOUBLE")
       
 11665         prompt("Type of G")
       
 11666         promptgroup("41 - Input A-G")
       
 11667         interest(1)
       
 11668         special(SPC_NOMOD)
       
 11669         menu(menuFtype)
       
 11670     }
       
 11671     field(FTH, DBF_MENU) {
       
 11672         menu(menuFtype)
       
 11673         prompt("Type of H")
       
 11674         promptgroup("42 - Input H-N")
       
 11675         interest(1)
       
 11676         special(SPC_NOMOD)
       
 11677         initial("DOUBLE")
       
 11678     }
       
 11679     field(FTI, DBF_MENU) {
       
 11680         initial("DOUBLE")
       
 11681         prompt("Type of I")
       
 11682         special(SPC_NOMOD)
       
 11683         interest(1)
       
 11684         promptgroup("42 - Input H-N")
       
 11685         menu(menuFtype)
       
 11686     }
       
 11687     field(FTJ, DBF_MENU) {
       
 11688         initial("DOUBLE")
       
 11689         prompt("Type of J")
       
 11690         special(SPC_NOMOD)
       
 11691         interest(1)
       
 11692         promptgroup("42 - Input H-N")
       
 11693         menu(menuFtype)
       
 11694     }
       
 11695     field(FTK, DBF_MENU) {
       
 11696         prompt("Type of K")
       
 11697         interest(1)
       
 11698         special(SPC_NOMOD)
       
 11699         promptgroup("42 - Input H-N")
       
 11700         menu(menuFtype)
       
 11701         initial("DOUBLE")
       
 11702     }
       
 11703     field(FTL, DBF_MENU) {
       
 11704         prompt("Type of L")
       
 11705         interest(1)
       
 11706         special(SPC_NOMOD)
       
 11707         promptgroup("42 - Input H-N")
       
 11708         menu(menuFtype)
       
 11709         initial("DOUBLE")
       
 11710     }
       
 11711     field(FTM, DBF_MENU) {
       
 11712         initial("DOUBLE")
       
 11713         prompt("Type of M")
       
 11714         promptgroup("42 - Input H-N")
       
 11715         interest(1)
       
 11716         special(SPC_NOMOD)
       
 11717         menu(menuFtype)
       
 11718     }
       
 11719     field(FTN, DBF_MENU) {
       
 11720         menu(menuFtype)
       
 11721         interest(1)
       
 11722         special(SPC_NOMOD)
       
 11723         promptgroup("42 - Input H-N")
       
 11724         prompt("Type of N")
       
 11725         initial("DOUBLE")
       
 11726     }
       
 11727     field(FTO, DBF_MENU) {
       
 11728         initial("DOUBLE")
       
 11729         menu(menuFtype)
       
 11730         prompt("Type of O")
       
 11731         interest(1)
       
 11732         promptgroup("43 - Input O-U")
       
 11733         special(SPC_NOMOD)
       
 11734     }
       
 11735     field(FTP, DBF_MENU) {
       
 11736         initial("DOUBLE")
       
 11737         menu(menuFtype)
       
 11738         prompt("Type of P")
       
 11739         interest(1)
       
 11740         special(SPC_NOMOD)
       
 11741         promptgroup("43 - Input O-U")
       
 11742     }
       
 11743     field(FTQ, DBF_MENU) {
       
 11744         initial("DOUBLE")
       
 11745         prompt("Type of Q")
       
 11746         special(SPC_NOMOD)
       
 11747         interest(1)
       
 11748         promptgroup("43 - Input O-U")
       
 11749         menu(menuFtype)
       
 11750     }
       
 11751     field(FTR, DBF_MENU) {
       
 11752         menu(menuFtype)
       
 11753         prompt("Type of R")
       
 11754         special(SPC_NOMOD)
       
 11755         interest(1)
       
 11756         promptgroup("43 - Input O-U")
       
 11757         initial("DOUBLE")
       
 11758     }
       
 11759     field(FTS, DBF_MENU) {
       
 11760         initial("DOUBLE")
       
 11761         menu(menuFtype)
       
 11762         promptgroup("43 - Input O-U")
       
 11763         interest(1)
       
 11764         special(SPC_NOMOD)
       
 11765         prompt("Type of S")
       
 11766     }
       
 11767     field(FTT, DBF_MENU) {
       
 11768         prompt("Type of T")
       
 11769         promptgroup("43 - Input O-U")
       
 11770         interest(1)
       
 11771         special(SPC_NOMOD)
       
 11772         menu(menuFtype)
       
 11773         initial("DOUBLE")
       
 11774     }
       
 11775     field(FTU, DBF_MENU) {
       
 11776         interest(1)
       
 11777         promptgroup("43 - Input O-U")
       
 11778         special(SPC_NOMOD)
       
 11779         prompt("Type of U")
       
 11780         menu(menuFtype)
       
 11781         initial("DOUBLE")
       
 11782     }
       
 11783     field(NOA, DBF_ULONG) {
       
 11784         interest(1)
       
 11785         special(SPC_NOMOD)
       
 11786         promptgroup("41 - Input A-G")
       
 11787         prompt("Max. elements in A")
       
 11788         initial("1")
       
 11789     }
       
 11790     field(NOB, DBF_ULONG) {
       
 11791         initial("1")
       
 11792         interest(1)
       
 11793         special(SPC_NOMOD)
       
 11794         promptgroup("41 - Input A-G")
       
 11795         prompt("Max. elements in B")
       
 11796     }
       
 11797     field(NOC, DBF_ULONG) {
       
 11798         prompt("Max. elements in C")
       
 11799         special(SPC_NOMOD)
       
 11800         interest(1)
       
 11801         promptgroup("41 - Input A-G")
       
 11802         initial("1")
       
 11803     }
       
 11804     field(NOD, DBF_ULONG) {
       
 11805         initial("1")
       
 11806         prompt("Max. elements in D")
       
 11807         special(SPC_NOMOD)
       
 11808         interest(1)
       
 11809         promptgroup("41 - Input A-G")
       
 11810     }
       
 11811     field(NOE, DBF_ULONG) {
       
 11812         initial("1")
       
 11813         interest(1)
       
 11814         promptgroup("41 - Input A-G")
       
 11815         special(SPC_NOMOD)
       
 11816         prompt("Max. elements in E")
       
 11817     }
       
 11818     field(NOF, DBF_ULONG) {
       
 11819         initial("1")
       
 11820         interest(1)
       
 11821         special(SPC_NOMOD)
       
 11822         promptgroup("41 - Input A-G")
       
 11823         prompt("Max. elements in F")
       
 11824     }
       
 11825     field(NOG, DBF_ULONG) {
       
 11826         prompt("Max. elements in G")
       
 11827         interest(1)
       
 11828         special(SPC_NOMOD)
       
 11829         promptgroup("41 - Input A-G")
       
 11830         initial("1")
       
 11831     }
       
 11832     field(NOH, DBF_ULONG) {
       
 11833         initial("1")
       
 11834         interest(1)
       
 11835         special(SPC_NOMOD)
       
 11836         promptgroup("42 - Input H-N")
       
 11837         prompt("Max. elements in H")
       
 11838     }
       
 11839     field(NOI, DBF_ULONG) {
       
 11840         interest(1)
       
 11841         promptgroup("42 - Input H-N")
       
 11842         special(SPC_NOMOD)
       
 11843         prompt("Max. elements in I")
       
 11844         initial("1")
       
 11845     }
       
 11846     field(NOJ, DBF_ULONG) {
       
 11847         prompt("Max. elements in J")
       
 11848         interest(1)
       
 11849         special(SPC_NOMOD)
       
 11850         promptgroup("42 - Input H-N")
       
 11851         initial("1")
       
 11852     }
       
 11853     field(NOK, DBF_ULONG) {
       
 11854         prompt("Max. elements in K")
       
 11855         promptgroup("42 - Input H-N")
       
 11856         interest(1)
       
 11857         special(SPC_NOMOD)
       
 11858         initial("1")
       
 11859     }
       
 11860     field(NOL, DBF_ULONG) {
       
 11861         special(SPC_NOMOD)
       
 11862         interest(1)
       
 11863         promptgroup("42 - Input H-N")
       
 11864         prompt("Max. elements in L")
       
 11865         initial("1")
       
 11866     }
       
 11867     field(NOM, DBF_ULONG) {
       
 11868         initial("1")
       
 11869         prompt("Max. elements in M")
       
 11870         special(SPC_NOMOD)
       
 11871         interest(1)
       
 11872         promptgroup("42 - Input H-N")
       
 11873     }
       
 11874     field(NON, DBF_ULONG) {
       
 11875         prompt("Max. elements in N")
       
 11876         interest(1)
       
 11877         special(SPC_NOMOD)
       
 11878         promptgroup("42 - Input H-N")
       
 11879         initial("1")
       
 11880     }
       
 11881     field(NOO, DBF_ULONG) {
       
 11882         initial("1")
       
 11883         prompt("Max. elements in O")
       
 11884         special(SPC_NOMOD)
       
 11885         interest(1)
       
 11886         promptgroup("43 - Input O-U")
       
 11887     }
       
 11888     field(NOP, DBF_ULONG) {
       
 11889         initial("1")
       
 11890         prompt("Max. elements in P")
       
 11891         interest(1)
       
 11892         special(SPC_NOMOD)
       
 11893         promptgroup("43 - Input O-U")
       
 11894     }
       
 11895     field(NOQ, DBF_ULONG) {
       
 11896         interest(1)
       
 11897         special(SPC_NOMOD)
       
 11898         promptgroup("43 - Input O-U")
       
 11899         prompt("Max. elements in Q")
       
 11900         initial("1")
       
 11901     }
       
 11902     field(NOR, DBF_ULONG) {
       
 11903         promptgroup("43 - Input O-U")
       
 11904         interest(1)
       
 11905         special(SPC_NOMOD)
       
 11906         prompt("Max. elements in R")
       
 11907         initial("1")
       
 11908     }
       
 11909     field(NOS, DBF_ULONG) {
       
 11910         initial("1")
       
 11911         interest(1)
       
 11912         special(SPC_NOMOD)
       
 11913         promptgroup("43 - Input O-U")
       
 11914         prompt("Max. elements in S")
       
 11915     }
       
 11916     field(NOT, DBF_ULONG) {
       
 11917         prompt("Max. elements in T")
       
 11918         promptgroup("43 - Input O-U")
       
 11919         interest(1)
       
 11920         special(SPC_NOMOD)
       
 11921         initial("1")
       
 11922     }
       
 11923     field(NOU, DBF_ULONG) {
       
 11924         initial("1")
       
 11925         interest(1)
       
 11926         promptgroup("43 - Input O-U")
       
 11927         special(SPC_NOMOD)
       
 11928         prompt("Max. elements in U")
       
 11929     }
       
 11930     field(NEA, DBF_ULONG) {
       
 11931         initial("1")
       
 11932         interest(3)
       
 11933         special(SPC_NOMOD)
       
 11934         prompt("Num. elements in A")
       
 11935     }
       
 11936     field(NEB, DBF_ULONG) {
       
 11937         prompt("Num. elements in B")
       
 11938         special(SPC_NOMOD)
       
 11939         interest(3)
       
 11940         initial("1")
       
 11941     }
       
 11942     field(NEC, DBF_ULONG) {
       
 11943         prompt("Num. elements in C")
       
 11944         special(SPC_NOMOD)
       
 11945         interest(3)
       
 11946         initial("1")
       
 11947     }
       
 11948     field(NED, DBF_ULONG) {
       
 11949         initial("1")
       
 11950         prompt("Num. elements in D")
       
 11951         special(SPC_NOMOD)
       
 11952         interest(3)
       
 11953     }
       
 11954     field(NEE, DBF_ULONG) {
       
 11955         special(SPC_NOMOD)
       
 11956         interest(3)
       
 11957         prompt("Num. elements in E")
       
 11958         initial("1")
       
 11959     }
       
 11960     field(NEF, DBF_ULONG) {
       
 11961         prompt("Num. elements in F")
       
 11962         interest(3)
       
 11963         special(SPC_NOMOD)
       
 11964         initial("1")
       
 11965     }
       
 11966     field(NEG, DBF_ULONG) {
       
 11967         prompt("Num. elements in G")
       
 11968         special(SPC_NOMOD)
       
 11969         interest(3)
       
 11970         initial("1")
       
 11971     }
       
 11972     field(NEH, DBF_ULONG) {
       
 11973         special(SPC_NOMOD)
       
 11974         interest(3)
       
 11975         prompt("Num. elements in H")
       
 11976         initial("1")
       
 11977     }
       
 11978     field(NEI, DBF_ULONG) {
       
 11979         prompt("Num. elements in I")
       
 11980         interest(3)
       
 11981         special(SPC_NOMOD)
       
 11982         initial("1")
       
 11983     }
       
 11984     field(NEJ, DBF_ULONG) {
       
 11985         interest(3)
       
 11986         special(SPC_NOMOD)
       
 11987         prompt("Num. elements in J")
       
 11988         initial("1")
       
 11989     }
       
 11990     field(NEK, DBF_ULONG) {
       
 11991         prompt("Num. elements in K")
       
 11992         special(SPC_NOMOD)
       
 11993         interest(3)
       
 11994         initial("1")
       
 11995     }
       
 11996     field(NEL, DBF_ULONG) {
       
 11997         prompt("Num. elements in L")
       
 11998         special(SPC_NOMOD)
       
 11999         interest(3)
       
 12000         initial("1")
       
 12001     }
       
 12002     field(NEM, DBF_ULONG) {
       
 12003         initial("1")
       
 12004         prompt("Num. elements in M")
       
 12005         interest(3)
       
 12006         special(SPC_NOMOD)
       
 12007     }
       
 12008     field(NEN, DBF_ULONG) {
       
 12009         prompt("Num. elements in N")
       
 12010         special(SPC_NOMOD)
       
 12011         interest(3)
       
 12012         initial("1")
       
 12013     }
       
 12014     field(NEO, DBF_ULONG) {
       
 12015         initial("1")
       
 12016         prompt("Num. elements in O")
       
 12017         interest(3)
       
 12018         special(SPC_NOMOD)
       
 12019     }
       
 12020     field(NEP, DBF_ULONG) {
       
 12021         prompt("Num. elements in P")
       
 12022         interest(3)
       
 12023         special(SPC_NOMOD)
       
 12024         initial("1")
       
 12025     }
       
 12026     field(NEQ, DBF_ULONG) {
       
 12027         initial("1")
       
 12028         prompt("Num. elements in Q")
       
 12029         special(SPC_NOMOD)
       
 12030         interest(3)
       
 12031     }
       
 12032     field(NER, DBF_ULONG) {
       
 12033         initial("1")
       
 12034         special(SPC_NOMOD)
       
 12035         interest(3)
       
 12036         prompt("Num. elements in R")
       
 12037     }
       
 12038     field(NES, DBF_ULONG) {
       
 12039         special(SPC_NOMOD)
       
 12040         interest(3)
       
 12041         prompt("Num. elements in S")
       
 12042         initial("1")
       
 12043     }
       
 12044     field(NET, DBF_ULONG) {
       
 12045         initial("1")
       
 12046         prompt("Num. elements in T")
       
 12047         interest(3)
       
 12048         special(SPC_NOMOD)
       
 12049     }
       
 12050     field(NEU, DBF_ULONG) {
       
 12051         interest(3)
       
 12052         special(SPC_NOMOD)
       
 12053         prompt("Num. elements in U")
       
 12054         initial("1")
       
 12055     }
       
 12056     field(OUTA, DBF_OUTLINK) {
       
 12057         prompt("Output Link A")
       
 12058         interest(1)
       
 12059         promptgroup("51 - Output A-G")
       
 12060     }
       
 12061     field(OUTB, DBF_OUTLINK) {
       
 12062         promptgroup("51 - Output A-G")
       
 12063         interest(1)
       
 12064         prompt("Output Link B")
       
 12065     }
       
 12066     field(OUTC, DBF_OUTLINK) {
       
 12067         prompt("Output Link C")
       
 12068         interest(1)
       
 12069         promptgroup("51 - Output A-G")
       
 12070     }
       
 12071     field(OUTD, DBF_OUTLINK) {
       
 12072         prompt("Output Link D")
       
 12073         interest(1)
       
 12074         promptgroup("51 - Output A-G")
       
 12075     }
       
 12076     field(OUTE, DBF_OUTLINK) {
       
 12077         prompt("Output Link E")
       
 12078         promptgroup("51 - Output A-G")
       
 12079         interest(1)
       
 12080     }
       
 12081     field(OUTF, DBF_OUTLINK) {
       
 12082         prompt("Output Link F")
       
 12083         interest(1)
       
 12084         promptgroup("51 - Output A-G")
       
 12085     }
       
 12086     field(OUTG, DBF_OUTLINK) {
       
 12087         prompt("Output Link G")
       
 12088         promptgroup("51 - Output A-G")
       
 12089         interest(1)
       
 12090     }
       
 12091     field(OUTH, DBF_OUTLINK) {
       
 12092         interest(1)
       
 12093         promptgroup("52 - Output H-N")
       
 12094         prompt("Output Link H")
       
 12095     }
       
 12096     field(OUTI, DBF_OUTLINK) {
       
 12097         prompt("Output Link I")
       
 12098         interest(1)
       
 12099         promptgroup("52 - Output H-N")
       
 12100     }
       
 12101     field(OUTJ, DBF_OUTLINK) {
       
 12102         prompt("Output Link J")
       
 12103         interest(1)
       
 12104         promptgroup("52 - Output H-N")
       
 12105     }
       
 12106     field(OUTK, DBF_OUTLINK) {
       
 12107         prompt("Output Link K")
       
 12108         promptgroup("52 - Output H-N")
       
 12109         interest(1)
       
 12110     }
       
 12111     field(OUTL, DBF_OUTLINK) {
       
 12112         prompt("Output Link L")
       
 12113         promptgroup("52 - Output H-N")
       
 12114         interest(1)
       
 12115     }
       
 12116     field(OUTM, DBF_OUTLINK) {
       
 12117         interest(1)
       
 12118         promptgroup("52 - Output H-N")
       
 12119         prompt("Output Link M")
       
 12120     }
       
 12121     field(OUTN, DBF_OUTLINK) {
       
 12122         prompt("Output Link N")
       
 12123         interest(1)
       
 12124         promptgroup("52 - Output H-N")
       
 12125     }
       
 12126     field(OUTO, DBF_OUTLINK) {
       
 12127         interest(1)
       
 12128         promptgroup("53 - Output O-U")
       
 12129         prompt("Output Link O")
       
 12130     }
       
 12131     field(OUTP, DBF_OUTLINK) {
       
 12132         prompt("Output Link P")
       
 12133         promptgroup("53 - Output O-U")
       
 12134         interest(1)
       
 12135     }
       
 12136     field(OUTQ, DBF_OUTLINK) {
       
 12137         prompt("Output Link Q")
       
 12138         interest(1)
       
 12139         promptgroup("53 - Output O-U")
       
 12140     }
       
 12141     field(OUTR, DBF_OUTLINK) {
       
 12142         interest(1)
       
 12143         promptgroup("53 - Output O-U")
       
 12144         prompt("Output Link R")
       
 12145     }
       
 12146     field(OUTS, DBF_OUTLINK) {
       
 12147         promptgroup("53 - Output O-U")
       
 12148         interest(1)
       
 12149         prompt("Output Link S")
       
 12150     }
       
 12151     field(OUTT, DBF_OUTLINK) {
       
 12152         prompt("Output Link T")
       
 12153         promptgroup("53 - Output O-U")
       
 12154         interest(1)
       
 12155     }
       
 12156     field(OUTU, DBF_OUTLINK) {
       
 12157         prompt("Output Link U")
       
 12158         interest(1)
       
 12159         promptgroup("53 - Output O-U")
       
 12160     }
       
 12161     field(VALA, DBF_NOACCESS) {
       
 12162         extra("void *vala")
       
 12163         prompt("Output value A")
       
 12164         interest(2)
       
 12165         special(SPC_DBADDR)
       
 12166         asl(ASL0)
       
 12167     }
       
 12168     field(VALB, DBF_NOACCESS) {
       
 12169         extra("void *valb")
       
 12170         asl(ASL0)
       
 12171         prompt("Output value B")
       
 12172         interest(2)
       
 12173         special(SPC_DBADDR)
       
 12174     }
       
 12175     field(VALC, DBF_NOACCESS) {
       
 12176         asl(ASL0)
       
 12177         interest(2)
       
 12178         special(SPC_DBADDR)
       
 12179         prompt("Output value C")
       
 12180         extra("void *valc")
       
 12181     }
       
 12182     field(VALD, DBF_NOACCESS) {
       
 12183         extra("void *vald")
       
 12184         asl(ASL0)
       
 12185         special(SPC_DBADDR)
       
 12186         interest(2)
       
 12187         prompt("Output value D")
       
 12188     }
       
 12189     field(VALE, DBF_NOACCESS) {
       
 12190         extra("void *vale")
       
 12191         asl(ASL0)
       
 12192         special(SPC_DBADDR)
       
 12193         interest(2)
       
 12194         prompt("Output value E")
       
 12195     }
       
 12196     field(VALF, DBF_NOACCESS) {
       
 12197         interest(2)
       
 12198         special(SPC_DBADDR)
       
 12199         prompt("Output value F")
       
 12200         asl(ASL0)
       
 12201         extra("void *valf")
       
 12202     }
       
 12203     field(VALG, DBF_NOACCESS) {
       
 12204         extra("void *valg")
       
 12205         prompt("Output value G")
       
 12206         special(SPC_DBADDR)
       
 12207         interest(2)
       
 12208         asl(ASL0)
       
 12209     }
       
 12210     field(VALH, DBF_NOACCESS) {
       
 12211         asl(ASL0)
       
 12212         interest(2)
       
 12213         special(SPC_DBADDR)
       
 12214         prompt("Output value H")
       
 12215         extra("void *valh")
       
 12216     }
       
 12217     field(VALI, DBF_NOACCESS) {
       
 12218         interest(2)
       
 12219         special(SPC_DBADDR)
       
 12220         prompt("Output value I")
       
 12221         asl(ASL0)
       
 12222         extra("void *vali")
       
 12223     }
       
 12224     field(VALJ, DBF_NOACCESS) {
       
 12225         extra("void *valj")
       
 12226         prompt("Output value J")
       
 12227         interest(2)
       
 12228         special(SPC_DBADDR)
       
 12229         asl(ASL0)
       
 12230     }
       
 12231     field(VALK, DBF_NOACCESS) {
       
 12232         prompt("Output value K")
       
 12233         interest(2)
       
 12234         special(SPC_DBADDR)
       
 12235         asl(ASL0)
       
 12236         extra("void *valk")
       
 12237     }
       
 12238     field(VALL, DBF_NOACCESS) {
       
 12239         special(SPC_DBADDR)
       
 12240         interest(2)
       
 12241         prompt("Output value L")
       
 12242         asl(ASL0)
       
 12243         extra("void *vall")
       
 12244     }
       
 12245     field(VALM, DBF_NOACCESS) {
       
 12246         prompt("Output value M")
       
 12247         interest(2)
       
 12248         special(SPC_DBADDR)
       
 12249         asl(ASL0)
       
 12250         extra("void *valm")
       
 12251     }
       
 12252     field(VALN, DBF_NOACCESS) {
       
 12253         prompt("Output value N")
       
 12254         interest(2)
       
 12255         special(SPC_DBADDR)
       
 12256         asl(ASL0)
       
 12257         extra("void *valn")
       
 12258     }
       
 12259     field(VALO, DBF_NOACCESS) {
       
 12260         extra("void *valo")
       
 12261         asl(ASL0)
       
 12262         interest(2)
       
 12263         special(SPC_DBADDR)
       
 12264         prompt("Output value O")
       
 12265     }
       
 12266     field(VALP, DBF_NOACCESS) {
       
 12267         extra("void *valp")
       
 12268         asl(ASL0)
       
 12269         prompt("Output value P")
       
 12270         special(SPC_DBADDR)
       
 12271         interest(2)
       
 12272     }
       
 12273     field(VALQ, DBF_NOACCESS) {
       
 12274         extra("void *valq")
       
 12275         prompt("Output value Q")
       
 12276         interest(2)
       
 12277         special(SPC_DBADDR)
       
 12278         asl(ASL0)
       
 12279     }
       
 12280     field(VALR, DBF_NOACCESS) {
       
 12281         extra("void *valr")
       
 12282         special(SPC_DBADDR)
       
 12283         interest(2)
       
 12284         prompt("Output value R")
       
 12285         asl(ASL0)
       
 12286     }
       
 12287     field(VALS, DBF_NOACCESS) {
       
 12288         special(SPC_DBADDR)
       
 12289         interest(2)
       
 12290         prompt("Output value S")
       
 12291         asl(ASL0)
       
 12292         extra("void *vals")
       
 12293     }
       
 12294     field(VALT, DBF_NOACCESS) {
       
 12295         prompt("Output value T")
       
 12296         interest(2)
       
 12297         special(SPC_DBADDR)
       
 12298         asl(ASL0)
       
 12299         extra("void *valt")
       
 12300     }
       
 12301     field(VALU, DBF_NOACCESS) {
       
 12302         interest(2)
       
 12303         special(SPC_DBADDR)
       
 12304         prompt("Output value U")
       
 12305         asl(ASL0)
       
 12306         extra("void *valu")
       
 12307     }
       
 12308     field(OVLA, DBF_NOACCESS) {
       
 12309         asl(ASL0)
       
 12310         prompt("Old Output A")
       
 12311         interest(4)
       
 12312         special(SPC_NOMOD)
       
 12313         extra("void *ovla")
       
 12314     }
       
 12315     field(OVLB, DBF_NOACCESS) {
       
 12316         extra("void *ovlb")
       
 12317         asl(ASL0)
       
 12318         prompt("Old Output B")
       
 12319         special(SPC_NOMOD)
       
 12320         interest(4)
       
 12321     }
       
 12322     field(OVLC, DBF_NOACCESS) {
       
 12323         special(SPC_NOMOD)
       
 12324         interest(4)
       
 12325         prompt("Old Output C")
       
 12326         asl(ASL0)
       
 12327         extra("void *ovlc")
       
 12328     }
       
 12329     field(OVLD, DBF_NOACCESS) {
       
 12330         special(SPC_NOMOD)
       
 12331         interest(4)
       
 12332         prompt("Old Output D")
       
 12333         asl(ASL0)
       
 12334         extra("void *ovld")
       
 12335     }
       
 12336     field(OVLE, DBF_NOACCESS) {
       
 12337         extra("void *ovle")
       
 12338         asl(ASL0)
       
 12339         special(SPC_NOMOD)
       
 12340         interest(4)
       
 12341         prompt("Old Output E")
       
 12342     }
       
 12343     field(OVLF, DBF_NOACCESS) {
       
 12344         special(SPC_NOMOD)
       
 12345         interest(4)
       
 12346         prompt("Old Output F")
       
 12347         asl(ASL0)
       
 12348         extra("void *ovlf")
       
 12349     }
       
 12350     field(OVLG, DBF_NOACCESS) {
       
 12351         asl(ASL0)
       
 12352         interest(4)
       
 12353         special(SPC_NOMOD)
       
 12354         prompt("Old Output G")
       
 12355         extra("void *ovlg")
       
 12356     }
       
 12357     field(OVLH, DBF_NOACCESS) {
       
 12358         interest(4)
       
 12359         special(SPC_NOMOD)
       
 12360         prompt("Old Output H")
       
 12361         asl(ASL0)
       
 12362         extra("void *ovlh")
       
 12363     }
       
 12364     field(OVLI, DBF_NOACCESS) {
       
 12365         asl(ASL0)
       
 12366         interest(4)
       
 12367         special(SPC_NOMOD)
       
 12368         prompt("Old Output I")
       
 12369         extra("void *ovli")
       
 12370     }
       
 12371     field(OVLJ, DBF_NOACCESS) {
       
 12372         prompt("Old Output J")
       
 12373         interest(4)
       
 12374         special(SPC_NOMOD)
       
 12375         asl(ASL0)
       
 12376         extra("void *ovlj")
       
 12377     }
       
 12378     field(OVLK, DBF_NOACCESS) {
       
 12379         extra("void *ovlk")
       
 12380         asl(ASL0)
       
 12381         prompt("Old Output K")
       
 12382         special(SPC_NOMOD)
       
 12383         interest(4)
       
 12384     }
       
 12385     field(OVLL, DBF_NOACCESS) {
       
 12386         prompt("Old Output L")
       
 12387         special(SPC_NOMOD)
       
 12388         interest(4)
       
 12389         asl(ASL0)
       
 12390         extra("void *ovll")
       
 12391     }
       
 12392     field(OVLM, DBF_NOACCESS) {
       
 12393         extra("void *ovlm")
       
 12394         prompt("Old Output M")
       
 12395         interest(4)
       
 12396         special(SPC_NOMOD)
       
 12397         asl(ASL0)
       
 12398     }
       
 12399     field(OVLN, DBF_NOACCESS) {
       
 12400         extra("void *ovln")
       
 12401         prompt("Old Output N")
       
 12402         interest(4)
       
 12403         special(SPC_NOMOD)
       
 12404         asl(ASL0)
       
 12405     }
       
 12406     field(OVLO, DBF_NOACCESS) {
       
 12407         extra("void *ovlo")
       
 12408         asl(ASL0)
       
 12409         interest(4)
       
 12410         special(SPC_NOMOD)
       
 12411         prompt("Old Output O")
       
 12412     }
       
 12413     field(OVLP, DBF_NOACCESS) {
       
 12414         special(SPC_NOMOD)
       
 12415         interest(4)
       
 12416         prompt("Old Output P")
       
 12417         asl(ASL0)
       
 12418         extra("void *ovlp")
       
 12419     }
       
 12420     field(OVLQ, DBF_NOACCESS) {
       
 12421         asl(ASL0)
       
 12422         prompt("Old Output Q")
       
 12423         interest(4)
       
 12424         special(SPC_NOMOD)
       
 12425         extra("void *ovlq")
       
 12426     }
       
 12427     field(OVLR, DBF_NOACCESS) {
       
 12428         extra("void *ovlr")
       
 12429         asl(ASL0)
       
 12430         prompt("Old Output R")
       
 12431         special(SPC_NOMOD)
       
 12432         interest(4)
       
 12433     }
       
 12434     field(OVLS, DBF_NOACCESS) {
       
 12435         extra("void *ovls")
       
 12436         prompt("Old Output S")
       
 12437         special(SPC_NOMOD)
       
 12438         interest(4)
       
 12439         asl(ASL0)
       
 12440     }
       
 12441     field(OVLT, DBF_NOACCESS) {
       
 12442         asl(ASL0)
       
 12443         prompt("Old Output T")
       
 12444         special(SPC_NOMOD)
       
 12445         interest(4)
       
 12446         extra("void *ovlt")
       
 12447     }
       
 12448     field(OVLU, DBF_NOACCESS) {
       
 12449         asl(ASL0)
       
 12450         interest(4)
       
 12451         special(SPC_NOMOD)
       
 12452         prompt("Old Output U")
       
 12453         extra("void *ovlu")
       
 12454     }
       
 12455     field(FTVA, DBF_MENU) {
       
 12456         initial("DOUBLE")
       
 12457         menu(menuFtype)
       
 12458         interest(1)
       
 12459         special(SPC_NOMOD)
       
 12460         promptgroup("51 - Output A-G")
       
 12461         prompt("Type of VALA")
       
 12462     }
       
 12463     field(FTVB, DBF_MENU) {
       
 12464         menu(menuFtype)
       
 12465         prompt("Type of VALB")
       
 12466         interest(1)
       
 12467         special(SPC_NOMOD)
       
 12468         promptgroup("51 - Output A-G")
       
 12469         initial("DOUBLE")
       
 12470     }
       
 12471     field(FTVC, DBF_MENU) {
       
 12472         promptgroup("51 - Output A-G")
       
 12473         interest(1)
       
 12474         special(SPC_NOMOD)
       
 12475         prompt("Type of VALC")
       
 12476         menu(menuFtype)
       
 12477         initial("DOUBLE")
       
 12478     }
       
 12479     field(FTVD, DBF_MENU) {
       
 12480         prompt("Type of VALD")
       
 12481         promptgroup("51 - Output A-G")
       
 12482         interest(1)
       
 12483         special(SPC_NOMOD)
       
 12484         menu(menuFtype)
       
 12485         initial("DOUBLE")
       
 12486     }
       
 12487     field(FTVE, DBF_MENU) {
       
 12488         initial("DOUBLE")
       
 12489         prompt("Type of VALE")
       
 12490         interest(1)
       
 12491         special(SPC_NOMOD)
       
 12492         promptgroup("51 - Output A-G")
       
 12493         menu(menuFtype)
       
 12494     }
       
 12495     field(FTVF, DBF_MENU) {
       
 12496         initial("DOUBLE")
       
 12497         menu(menuFtype)
       
 12498         interest(1)
       
 12499         promptgroup("51 - Output A-G")
       
 12500         special(SPC_NOMOD)
       
 12501         prompt("Type of VALF")
       
 12502     }
       
 12503     field(FTVG, DBF_MENU) {
       
 12504         initial("DOUBLE")
       
 12505         menu(menuFtype)
       
 12506         prompt("Type of VALG")
       
 12507         special(SPC_NOMOD)
       
 12508         interest(1)
       
 12509         promptgroup("51 - Output A-G")
       
 12510     }
       
 12511     field(FTVH, DBF_MENU) {
       
 12512         promptgroup("52 - Output H-N")
       
 12513         interest(1)
       
 12514         special(SPC_NOMOD)
       
 12515         prompt("Type of VALH")
       
 12516         menu(menuFtype)
       
 12517         initial("DOUBLE")
       
 12518     }
       
 12519     field(FTVI, DBF_MENU) {
       
 12520         special(SPC_NOMOD)
       
 12521         interest(1)
       
 12522         promptgroup("52 - Output H-N")
       
 12523         prompt("Type of VALI")
       
 12524         menu(menuFtype)
       
 12525         initial("DOUBLE")
       
 12526     }
       
 12527     field(FTVJ, DBF_MENU) {
       
 12528         promptgroup("52 - Output H-N")
       
 12529         interest(1)
       
 12530         special(SPC_NOMOD)
       
 12531         prompt("Type of VALJ")
       
 12532         menu(menuFtype)
       
 12533         initial("DOUBLE")
       
 12534     }
       
 12535     field(FTVK, DBF_MENU) {
       
 12536         interest(1)
       
 12537         promptgroup("52 - Output H-N")
       
 12538         special(SPC_NOMOD)
       
 12539         prompt("Type of VALK")
       
 12540         menu(menuFtype)
       
 12541         initial("DOUBLE")
       
 12542     }
       
 12543     field(FTVL, DBF_MENU) {
       
 12544         initial("DOUBLE")
       
 12545         menu(menuFtype)
       
 12546         prompt("Type of VALL")
       
 12547         promptgroup("52 - Output H-N")
       
 12548         interest(1)
       
 12549         special(SPC_NOMOD)
       
 12550     }
       
 12551     field(FTVM, DBF_MENU) {
       
 12552         initial("DOUBLE")
       
 12553         menu(menuFtype)
       
 12554         prompt("Type of VALM")
       
 12555         special(SPC_NOMOD)
       
 12556         interest(1)
       
 12557         promptgroup("52 - Output H-N")
       
 12558     }
       
 12559     field(FTVN, DBF_MENU) {
       
 12560         initial("DOUBLE")
       
 12561         prompt("Type of VALN")
       
 12562         interest(1)
       
 12563         special(SPC_NOMOD)
       
 12564         promptgroup("52 - Output H-N")
       
 12565         menu(menuFtype)
       
 12566     }
       
 12567     field(FTVO, DBF_MENU) {
       
 12568         initial("DOUBLE")
       
 12569         menu(menuFtype)
       
 12570         prompt("Type of VALO")
       
 12571         promptgroup("53 - Output O-U")
       
 12572         interest(1)
       
 12573         special(SPC_NOMOD)
       
 12574     }
       
 12575     field(FTVP, DBF_MENU) {
       
 12576         menu(menuFtype)
       
 12577         prompt("Type of VALP")
       
 12578         interest(1)
       
 12579         promptgroup("53 - Output O-U")
       
 12580         special(SPC_NOMOD)
       
 12581         initial("DOUBLE")
       
 12582     }
       
 12583     field(FTVQ, DBF_MENU) {
       
 12584         initial("DOUBLE")
       
 12585         menu(menuFtype)
       
 12586         interest(1)
       
 12587         special(SPC_NOMOD)
       
 12588         promptgroup("53 - Output O-U")
       
 12589         prompt("Type of VALQ")
       
 12590     }
       
 12591     field(FTVR, DBF_MENU) {
       
 12592         initial("DOUBLE")
       
 12593         interest(1)
       
 12594         special(SPC_NOMOD)
       
 12595         promptgroup("53 - Output O-U")
       
 12596         prompt("Type of VALR")
       
 12597         menu(menuFtype)
       
 12598     }
       
 12599     field(FTVS, DBF_MENU) {
       
 12600         initial("DOUBLE")
       
 12601         menu(menuFtype)
       
 12602         interest(1)
       
 12603         promptgroup("53 - Output O-U")
       
 12604         special(SPC_NOMOD)
       
 12605         prompt("Type of VALS")
       
 12606     }
       
 12607     field(FTVT, DBF_MENU) {
       
 12608         initial("DOUBLE")
       
 12609         prompt("Type of VALT")
       
 12610         interest(1)
       
 12611         special(SPC_NOMOD)
       
 12612         promptgroup("53 - Output O-U")
       
 12613         menu(menuFtype)
       
 12614     }
       
 12615     field(FTVU, DBF_MENU) {
       
 12616         interest(1)
       
 12617         special(SPC_NOMOD)
       
 12618         promptgroup("53 - Output O-U")
       
 12619         prompt("Type of VALU")
       
 12620         menu(menuFtype)
       
 12621         initial("DOUBLE")
       
 12622     }
       
 12623     field(NOVA, DBF_ULONG) {
       
 12624         initial("1")
       
 12625         promptgroup("51 - Output A-G")
       
 12626         interest(1)
       
 12627         special(SPC_NOMOD)
       
 12628         prompt("Max. elements in VALA")
       
 12629     }
       
 12630     field(NOVB, DBF_ULONG) {
       
 12631         prompt("Max. elements in VALB")
       
 12632         interest(1)
       
 12633         special(SPC_NOMOD)
       
 12634         promptgroup("51 - Output A-G")
       
 12635         initial("1")
       
 12636     }
       
 12637     field(NOVC, DBF_ULONG) {
       
 12638         initial("1")
       
 12639         prompt("Max. elements in VALC")
       
 12640         promptgroup("51 - Output A-G")
       
 12641         interest(1)
       
 12642         special(SPC_NOMOD)
       
 12643     }
       
 12644     field(NOVD, DBF_ULONG) {
       
 12645         initial("1")
       
 12646         special(SPC_NOMOD)
       
 12647         interest(1)
       
 12648         promptgroup("51 - Output A-G")
       
 12649         prompt("Max. elements in VALD")
       
 12650     }
       
 12651     field(NOVE, DBF_ULONG) {
       
 12652         initial("1")
       
 12653         interest(1)
       
 12654         special(SPC_NOMOD)
       
 12655         promptgroup("51 - Output A-G")
       
 12656         prompt("Max. elements in VALE")
       
 12657     }
       
 12658     field(NOVF, DBF_ULONG) {
       
 12659         promptgroup("51 - Output A-G")
       
 12660         interest(1)
       
 12661         special(SPC_NOMOD)
       
 12662         prompt("Max. elements in VALF")
       
 12663         initial("1")
       
 12664     }
       
 12665     field(NOVG, DBF_ULONG) {
       
 12666         special(SPC_NOMOD)
       
 12667         interest(1)
       
 12668         promptgroup("51 - Output A-G")
       
 12669         prompt("Max. elements in VALG")
       
 12670         initial("1")
       
 12671     }
       
 12672     field(NOVH, DBF_ULONG) {
       
 12673         prompt("Max. elements in VAlH")
       
 12674         interest(1)
       
 12675         promptgroup("52 - Output H-N")
       
 12676         special(SPC_NOMOD)
       
 12677         initial("1")
       
 12678     }
       
 12679     field(NOVI, DBF_ULONG) {
       
 12680         initial("1")
       
 12681         interest(1)
       
 12682         special(SPC_NOMOD)
       
 12683         promptgroup("52 - Output H-N")
       
 12684         prompt("Max. elements in VALI")
       
 12685     }
       
 12686     field(NOVJ, DBF_ULONG) {
       
 12687         initial("1")
       
 12688         promptgroup("52 - Output H-N")
       
 12689         interest(1)
       
 12690         special(SPC_NOMOD)
       
 12691         prompt("Max. elements in VALJ")
       
 12692     }
       
 12693     field(NOVK, DBF_ULONG) {
       
 12694         initial("1")
       
 12695         special(SPC_NOMOD)
       
 12696         interest(1)
       
 12697         promptgroup("52 - Output H-N")
       
 12698         prompt("Max. elements in VALK")
       
 12699     }
       
 12700     field(NOVL, DBF_ULONG) {
       
 12701         initial("1")
       
 12702         prompt("Max. elements in VALL")
       
 12703         special(SPC_NOMOD)
       
 12704         interest(1)
       
 12705         promptgroup("52 - Output H-N")
       
 12706     }
       
 12707     field(NOVM, DBF_ULONG) {
       
 12708         initial("1")
       
 12709         prompt("Max. elements in VALM")
       
 12710         interest(1)
       
 12711         special(SPC_NOMOD)
       
 12712         promptgroup("52 - Output H-N")
       
 12713     }
       
 12714     field(NOVN, DBF_ULONG) {
       
 12715         initial("1")
       
 12716         interest(1)
       
 12717         promptgroup("52 - Output H-N")
       
 12718         special(SPC_NOMOD)
       
 12719         prompt("Max. elements in VALN")
       
 12720     }
       
 12721     field(NOVO, DBF_ULONG) {
       
 12722         interest(1)
       
 12723         promptgroup("53 - Output O-U")
       
 12724         special(SPC_NOMOD)
       
 12725         prompt("Max. elements in VALO")
       
 12726         initial("1")
       
 12727     }
       
 12728     field(NOVP, DBF_ULONG) {
       
 12729         initial("1")
       
 12730         prompt("Max. elements in VALP")
       
 12731         promptgroup("53 - Output O-U")
       
 12732         interest(1)
       
 12733         special(SPC_NOMOD)
       
 12734     }
       
 12735     field(NOVQ, DBF_ULONG) {
       
 12736         initial("1")
       
 12737         interest(1)
       
 12738         promptgroup("53 - Output O-U")
       
 12739         special(SPC_NOMOD)
       
 12740         prompt("Max. elements in VALQ")
       
 12741     }
       
 12742     field(NOVR, DBF_ULONG) {
       
 12743         prompt("Max. elements in VALR")
       
 12744         promptgroup("53 - Output O-U")
       
 12745         interest(1)
       
 12746         special(SPC_NOMOD)
       
 12747         initial("1")
       
 12748     }
       
 12749     field(NOVS, DBF_ULONG) {
       
 12750         initial("1")
       
 12751         prompt("Max. elements in VALS")
       
 12752         special(SPC_NOMOD)
       
 12753         interest(1)
       
 12754         promptgroup("53 - Output O-U")
       
 12755     }
       
 12756     field(NOVT, DBF_ULONG) {
       
 12757         prompt("Max. elements in VALT")
       
 12758         interest(1)
       
 12759         special(SPC_NOMOD)
       
 12760         promptgroup("53 - Output O-U")
       
 12761         initial("1")
       
 12762     }
       
 12763     field(NOVU, DBF_ULONG) {
       
 12764         prompt("Max. elements in VALU")
       
 12765         special(SPC_NOMOD)
       
 12766         interest(1)
       
 12767         promptgroup("53 - Output O-U")
       
 12768         initial("1")
       
 12769     }
       
 12770     field(NEVA, DBF_ULONG) {
       
 12771         initial("1")
       
 12772         prompt("Num. elements in VALA")
       
 12773         special(SPC_NOMOD)
       
 12774         interest(3)
       
 12775     }
       
 12776     field(NEVB, DBF_ULONG) {
       
 12777         initial("1")
       
 12778         interest(3)
       
 12779         special(SPC_NOMOD)
       
 12780         prompt("Num. elements in VALB")
       
 12781     }
       
 12782     field(NEVC, DBF_ULONG) {
       
 12783         initial("1")
       
 12784         prompt("Num. elements in VALC")
       
 12785         special(SPC_NOMOD)
       
 12786         interest(3)
       
 12787     }
       
 12788     field(NEVD, DBF_ULONG) {
       
 12789         prompt("Num. elements in VALD")
       
 12790         interest(3)
       
 12791         special(SPC_NOMOD)
       
 12792         initial("1")
       
 12793     }
       
 12794     field(NEVE, DBF_ULONG) {
       
 12795         prompt("Num. elements in VALE")
       
 12796         special(SPC_NOMOD)
       
 12797         interest(3)
       
 12798         initial("1")
       
 12799     }
       
 12800     field(NEVF, DBF_ULONG) {
       
 12801         prompt("Num. elements in VALF")
       
 12802         interest(3)
       
 12803         special(SPC_NOMOD)
       
 12804         initial("1")
       
 12805     }
       
 12806     field(NEVG, DBF_ULONG) {
       
 12807         initial("1")
       
 12808         prompt("Num. elements in VALG")
       
 12809         interest(3)
       
 12810         special(SPC_NOMOD)
       
 12811     }
       
 12812     field(NEVH, DBF_ULONG) {
       
 12813         prompt("Num. elements in VAlH")
       
 12814         special(SPC_NOMOD)
       
 12815         interest(3)
       
 12816         initial("1")
       
 12817     }
       
 12818     field(NEVI, DBF_ULONG) {
       
 12819         initial("1")
       
 12820         prompt("Num. elements in VALI")
       
 12821         interest(3)
       
 12822         special(SPC_NOMOD)
       
 12823     }
       
 12824     field(NEVJ, DBF_ULONG) {
       
 12825         prompt("Num. elements in VALJ")
       
 12826         special(SPC_NOMOD)
       
 12827         interest(3)
       
 12828         initial("1")
       
 12829     }
       
 12830     field(NEVK, DBF_ULONG) {
       
 12831         initial("1")
       
 12832         prompt("Num. elements in VALK")
       
 12833         special(SPC_NOMOD)
       
 12834         interest(3)
       
 12835     }
       
 12836     field(NEVL, DBF_ULONG) {
       
 12837         interest(3)
       
 12838         special(SPC_NOMOD)
       
 12839         prompt("Num. elements in VALL")
       
 12840         initial("1")
       
 12841     }
       
 12842     field(NEVM, DBF_ULONG) {
       
 12843         interest(3)
       
 12844         special(SPC_NOMOD)
       
 12845         prompt("Num. elements in VALM")
       
 12846         initial("1")
       
 12847     }
       
 12848     field(NEVN, DBF_ULONG) {
       
 12849         initial("1")
       
 12850         prompt("Num. elements in VALN")
       
 12851         special(SPC_NOMOD)
       
 12852         interest(3)
       
 12853     }
       
 12854     field(NEVO, DBF_ULONG) {
       
 12855         special(SPC_NOMOD)
       
 12856         interest(3)
       
 12857         prompt("Num. elements in VALO")
       
 12858         initial("1")
       
 12859     }
       
 12860     field(NEVP, DBF_ULONG) {
       
 12861         initial("1")
       
 12862         prompt("Num. elements in VALP")
       
 12863         special(SPC_NOMOD)
       
 12864         interest(3)
       
 12865     }
       
 12866     field(NEVQ, DBF_ULONG) {
       
 12867         initial("1")
       
 12868         interest(3)
       
 12869         special(SPC_NOMOD)
       
 12870         prompt("Num. elements in VALQ")
       
 12871     }
       
 12872     field(NEVR, DBF_ULONG) {
       
 12873         initial("1")
       
 12874         prompt("Num. elements in VALR")
       
 12875         interest(3)
       
 12876         special(SPC_NOMOD)
       
 12877     }
       
 12878     field(NEVS, DBF_ULONG) {
       
 12879         prompt("Num. elements in VALS")
       
 12880         special(SPC_NOMOD)
       
 12881         interest(3)
       
 12882         initial("1")
       
 12883     }
       
 12884     field(NEVT, DBF_ULONG) {
       
 12885         initial("1")
       
 12886         interest(3)
       
 12887         special(SPC_NOMOD)
       
 12888         prompt("Num. elements in VALT")
       
 12889     }
       
 12890     field(NEVU, DBF_ULONG) {
       
 12891         prompt("Num. elements in VALU")
       
 12892         special(SPC_NOMOD)
       
 12893         interest(3)
       
 12894         initial("1")
       
 12895     }
       
 12896     field(ONVA, DBF_ULONG) {
       
 12897         prompt("Num. elements in OVLA")
       
 12898         special(SPC_NOMOD)
       
 12899         interest(4)
       
 12900         initial("1")
       
 12901     }
       
 12902     field(ONVB, DBF_ULONG) {
       
 12903         prompt("Num. elements in OVLB")
       
 12904         interest(4)
       
 12905         special(SPC_NOMOD)
       
 12906         initial("1")
       
 12907     }
       
 12908     field(ONVC, DBF_ULONG) {
       
 12909         special(SPC_NOMOD)
       
 12910         interest(4)
       
 12911         prompt("Num. elements in OVLC")
       
 12912         initial("1")
       
 12913     }
       
 12914     field(ONVD, DBF_ULONG) {
       
 12915         prompt("Num. elements in OVLD")
       
 12916         interest(4)
       
 12917         special(SPC_NOMOD)
       
 12918         initial("1")
       
 12919     }
       
 12920     field(ONVE, DBF_ULONG) {
       
 12921         initial("1")
       
 12922         interest(4)
       
 12923         special(SPC_NOMOD)
       
 12924         prompt("Num. elements in OVLE")
       
 12925     }
       
 12926     field(ONVF, DBF_ULONG) {
       
 12927         prompt("Num. elements in OVLF")
       
 12928         interest(4)
       
 12929         special(SPC_NOMOD)
       
 12930         initial("1")
       
 12931     }
       
 12932     field(ONVG, DBF_ULONG) {
       
 12933         prompt("Num. elements in OVLG")
       
 12934         interest(4)
       
 12935         special(SPC_NOMOD)
       
 12936         initial("1")
       
 12937     }
       
 12938     field(ONVH, DBF_ULONG) {
       
 12939         prompt("Num. elements in VAlH")
       
 12940         special(SPC_NOMOD)
       
 12941         interest(4)
       
 12942         initial("1")
       
 12943     }
       
 12944     field(ONVI, DBF_ULONG) {
       
 12945         prompt("Num. elements in OVLI")
       
 12946         interest(4)
       
 12947         special(SPC_NOMOD)
       
 12948         initial("1")
       
 12949     }
       
 12950     field(ONVJ, DBF_ULONG) {
       
 12951         initial("1")
       
 12952         interest(4)
       
 12953         special(SPC_NOMOD)
       
 12954         prompt("Num. elements in OVLJ")
       
 12955     }
       
 12956     field(ONVK, DBF_ULONG) {
       
 12957         prompt("Num. elements in OVLK")
       
 12958         special(SPC_NOMOD)
       
 12959         interest(4)
       
 12960         initial("1")
       
 12961     }
       
 12962     field(ONVL, DBF_ULONG) {
       
 12963         initial("1")
       
 12964         interest(4)
       
 12965         special(SPC_NOMOD)
       
 12966         prompt("Num. elements in OVLL")
       
 12967     }
       
 12968     field(ONVM, DBF_ULONG) {
       
 12969         special(SPC_NOMOD)
       
 12970         interest(4)
       
 12971         prompt("Num. elements in OVLM")
       
 12972         initial("1")
       
 12973     }
       
 12974     field(ONVN, DBF_ULONG) {
       
 12975         prompt("Num. elements in OVLN")
       
 12976         interest(4)
       
 12977         special(SPC_NOMOD)
       
 12978         initial("1")
       
 12979     }
       
 12980     field(ONVO, DBF_ULONG) {
       
 12981         special(SPC_NOMOD)
       
 12982         interest(4)
       
 12983         prompt("Num. elements in OVLO")
       
 12984         initial("1")
       
 12985     }
       
 12986     field(ONVP, DBF_ULONG) {
       
 12987         prompt("Num. elements in OVLP")
       
 12988         special(SPC_NOMOD)
       
 12989         interest(4)
       
 12990         initial("1")
       
 12991     }
       
 12992     field(ONVQ, DBF_ULONG) {
       
 12993         special(SPC_NOMOD)
       
 12994         interest(4)
       
 12995         prompt("Num. elements in OVLQ")
       
 12996         initial("1")
       
 12997     }
       
 12998     field(ONVR, DBF_ULONG) {
       
 12999         initial("1")
       
 13000         prompt("Num. elements in OVLR")
       
 13001         special(SPC_NOMOD)
       
 13002         interest(4)
       
 13003     }
       
 13004     field(ONVS, DBF_ULONG) {
       
 13005         prompt("Num. elements in OVLS")
       
 13006         interest(4)
       
 13007         special(SPC_NOMOD)
       
 13008         initial("1")
       
 13009     }
       
 13010     field(ONVT, DBF_ULONG) {
       
 13011         prompt("Num. elements in OVLT")
       
 13012         interest(4)
       
 13013         special(SPC_NOMOD)
       
 13014         initial("1")
       
 13015     }
       
 13016     field(ONVU, DBF_ULONG) {
       
 13017         prompt("Num. elements in OVLU")
       
 13018         interest(4)
       
 13019         special(SPC_NOMOD)
       
 13020         initial("1")
       
 13021     }
 20220     }
 13022 }
 20221 }
 13023 recordtype(seq) {
 20222 device(lso, CONSTANT, devLsoSoft, "Soft Channel")
       
 20223 device(lso, CONSTANT, devLsoSoftCallback, "Async Soft Channel")
       
 20224 device(lso, INST_IO, devLsoStdio, "stdio")
       
 20225 recordtype(sel) {
 13024     %#include "epicsTypes.h"
 20226     %#include "epicsTypes.h"
 13025     %#include "link.h"
 20227     %#include "link.h"
 13026     %#include "epicsMutex.h"
 20228     %#include "epicsMutex.h"
 13027     %#include "ellLib.h"
 20229     %#include "ellLib.h"
 13028     %#include "epicsTime.h"
 20230     %#include "epicsTime.h"
 13029     field(NAME, DBF_STRING) {
 20231     field(NAME, DBF_STRING) {
 13030         special(SPC_NOMOD)
 20232         special(SPC_NOMOD)
       
 20233         size(61)
 13031         prompt("Record Name")
 20234         prompt("Record Name")
 13032         size(61)
       
 13033     }
 20235     }
 13034     field(DESC, DBF_STRING) {
 20236     field(DESC, DBF_STRING) {
       
 20237         promptgroup("10 - Common")
       
 20238         size(41)
 13035         prompt("Descriptor")
 20239         prompt("Descriptor")
 13036         promptgroup("10 - Common")
       
 13037         size(41)
       
 13038     }
 20240     }
 13039     field(ASG, DBF_STRING) {
 20241     field(ASG, DBF_STRING) {
       
 20242         size(29)
 13040         prompt("Access Security Group")
 20243         prompt("Access Security Group")
 13041         special(SPC_AS)
 20244         special(SPC_AS)
 13042         promptgroup("10 - Common")
 20245         promptgroup("10 - Common")
 13043         size(29)
       
 13044     }
 20246     }
 13045     field(SCAN, DBF_MENU) {
 20247     field(SCAN, DBF_MENU) {
       
 20248         interest(1)
 13046         menu(menuScan)
 20249         menu(menuScan)
 13047         interest(1)
       
 13048         special(SPC_SCAN)
 20250         special(SPC_SCAN)
 13049         promptgroup("20 - Scan")
 20251         promptgroup("20 - Scan")
 13050         prompt("Scan Mechanism")
 20252         prompt("Scan Mechanism")
 13051     }
 20253     }
 13052     field(PINI, DBF_MENU) {
 20254     field(PINI, DBF_MENU) {
 13053         promptgroup("20 - Scan")
 20255         menu(menuPini)
 13054         interest(1)
 20256         interest(1)
       
 20257         promptgroup("20 - Scan")
 13055         prompt("Process at iocInit")
 20258         prompt("Process at iocInit")
 13056         menu(menuPini)
       
 13057     }
 20259     }
 13058     field(PHAS, DBF_SHORT) {
 20260     field(PHAS, DBF_SHORT) {
 13059         promptgroup("20 - Scan")
 20261         prompt("Scan Phase")
 13060         interest(1)
       
 13061         special(SPC_SCAN)
 20262         special(SPC_SCAN)
 13062         prompt("Scan Phase")
 20263         interest(1)
       
 20264         promptgroup("20 - Scan")
 13063     }
 20265     }
 13064     field(EVNT, DBF_STRING) {
 20266     field(EVNT, DBF_STRING) {
       
 20267         promptgroup("20 - Scan")
       
 20268         interest(1)
       
 20269         special(SPC_SCAN)
 13065         prompt("Event Name")
 20270         prompt("Event Name")
 13066         special(SPC_SCAN)
       
 13067         interest(1)
       
 13068         promptgroup("20 - Scan")
       
 13069         size(40)
 20271         size(40)
 13070     }
 20272     }
 13071     field(TSE, DBF_SHORT) {
 20273     field(TSE, DBF_SHORT) {
 13072         promptgroup("20 - Scan")
 20274         interest(1)
 13073         interest(1)
 20275         promptgroup("20 - Scan")
 13074         prompt("Time Stamp Event")
 20276         prompt("Time Stamp Event")
 13075     }
 20277     }
 13076     field(TSEL, DBF_INLINK) {
 20278     field(TSEL, DBF_INLINK) {
 13077         interest(1)
 20279         promptgroup("20 - Scan")
 13078         promptgroup("20 - Scan")
 20280         interest(1)
 13079         prompt("Time Stamp Link")
 20281         prompt("Time Stamp Link")
 13080     }
 20282     }
 13081     field(DTYP, DBF_DEVICE) {
 20283     field(DTYP, DBF_DEVICE) {
 13082         interest(1)
       
 13083         promptgroup("10 - Common")
       
 13084         prompt("Device Type")
 20284         prompt("Device Type")
       
 20285         interest(1)
       
 20286         promptgroup("10 - Common")
 13085     }
 20287     }
 13086     field(DISV, DBF_SHORT) {
 20288     field(DISV, DBF_SHORT) {
 13087         promptgroup("20 - Scan")
 20289         promptgroup("20 - Scan")
 13088         prompt("Disable Value")
 20290         prompt("Disable Value")
 13089         initial("1")
 20291         initial("1")
 13090     }
 20292     }
 13091     field(DISA, DBF_SHORT) {
 20293     field(DISA, DBF_SHORT) {
 13092         prompt("Disable")
 20294         prompt("Disable")
 13093     }
 20295     }
 13094     field(SDIS, DBF_INLINK) {
 20296     field(SDIS, DBF_INLINK) {
 13095         promptgroup("20 - Scan")
       
 13096         interest(1)
       
 13097         prompt("Scanning Disable")
 20297         prompt("Scanning Disable")
       
 20298         promptgroup("20 - Scan")
       
 20299         interest(1)
 13098     }
 20300     }
 13099     field(MLOK, DBF_NOACCESS) {
 20301     field(MLOK, DBF_NOACCESS) {
 13100         extra("epicsMutexId        mlok")
 20302         extra("epicsMutexId        mlok")
 13101         prompt("Monitor lock")
 20303         prompt("Monitor lock")
 13102         interest(4)
 20304         special(SPC_NOMOD)
 13103         special(SPC_NOMOD)
 20305         interest(4)
 13104     }
 20306     }
 13105     field(MLIS, DBF_NOACCESS) {
 20307     field(MLIS, DBF_NOACCESS) {
 13106         prompt("Monitor List")
 20308         prompt("Monitor List")
 13107         interest(4)
       
 13108         special(SPC_NOMOD)
       
 13109         extra("ELLLIST             mlis")
 20309         extra("ELLLIST             mlis")
       
 20310         interest(4)
       
 20311         special(SPC_NOMOD)
 13110     }
 20312     }
 13111     field(BKLNK, DBF_NOACCESS) {
 20313     field(BKLNK, DBF_NOACCESS) {
 13112         interest(4)
       
 13113         special(SPC_NOMOD)
       
 13114         prompt("Backwards link tracking")
 20314         prompt("Backwards link tracking")
 13115         extra("ELLLIST             bklnk")
 20315         extra("ELLLIST             bklnk")
       
 20316         interest(4)
       
 20317         special(SPC_NOMOD)
 13116     }
 20318     }
 13117     field(DISP, DBF_UCHAR) {
 20319     field(DISP, DBF_UCHAR) {
 13118         prompt("Disable putField")
 20320         prompt("Disable putField")
 13119     }
 20321     }
 13120     field(PROC, DBF_UCHAR) {
 20322     field(PROC, DBF_UCHAR) {
 13121         interest(3)
       
 13122         prompt("Force Processing")
 20323         prompt("Force Processing")
       
 20324         interest(3)
 13123         pp(TRUE)
 20325         pp(TRUE)
 13124     }
 20326     }
 13125     field(STAT, DBF_MENU) {
 20327     field(STAT, DBF_MENU) {
 13126         initial("UDF")
 20328         initial("UDF")
       
 20329         prompt("Alarm Status")
       
 20330         special(SPC_NOMOD)
 13127         menu(menuAlarmStat)
 20331         menu(menuAlarmStat)
 13128         special(SPC_NOMOD)
       
 13129         prompt("Alarm Status")
       
 13130     }
 20332     }
 13131     field(SEVR, DBF_MENU) {
 20333     field(SEVR, DBF_MENU) {
 13132         menu(menuAlarmSevr)
 20334         special(SPC_NOMOD)
 13133         special(SPC_NOMOD)
 20335         menu(menuAlarmSevr)
 13134         prompt("Alarm Severity")
 20336         prompt("Alarm Severity")
 13135     }
 20337     }
 13136     field(NSTA, DBF_MENU) {
 20338     field(NSTA, DBF_MENU) {
 13137         menu(menuAlarmStat)
 20339         menu(menuAlarmStat)
 13138         special(SPC_NOMOD)
 20340         interest(2)
 13139         interest(2)
 20341         special(SPC_NOMOD)
 13140         prompt("New Alarm Status")
 20342         prompt("New Alarm Status")
 13141     }
 20343     }
 13142     field(NSEV, DBF_MENU) {
 20344     field(NSEV, DBF_MENU) {
 13143         special(SPC_NOMOD)
       
 13144         interest(2)
       
 13145         prompt("New Alarm Severity")
 20345         prompt("New Alarm Severity")
 13146         menu(menuAlarmSevr)
 20346         menu(menuAlarmSevr)
       
 20347         interest(2)
       
 20348         special(SPC_NOMOD)
 13147     }
 20349     }
 13148     field(ACKS, DBF_MENU) {
 20350     field(ACKS, DBF_MENU) {
 13149         menu(menuAlarmSevr)
 20351         special(SPC_NOMOD)
 13150         special(SPC_NOMOD)
 20352         menu(menuAlarmSevr)
 13151         interest(2)
 20353         interest(2)
 13152         prompt("Alarm Ack Severity")
 20354         prompt("Alarm Ack Severity")
 13153     }
 20355     }
 13154     field(ACKT, DBF_MENU) {
 20356     field(ACKT, DBF_MENU) {
       
 20357         prompt("Alarm Ack Transient")
 13155         initial("YES")
 20358         initial("YES")
       
 20359         promptgroup("70 - Alarm")
 13156         menu(menuYesNo)
 20360         menu(menuYesNo)
 13157         prompt("Alarm Ack Transient")
 20361         interest(2)
 13158         special(SPC_NOMOD)
 20362         special(SPC_NOMOD)
 13159         interest(2)
       
 13160         promptgroup("70 - Alarm")
       
 13161     }
 20363     }
 13162     field(DISS, DBF_MENU) {
 20364     field(DISS, DBF_MENU) {
 13163         prompt("Disable Alarm Sevrty")
 20365         prompt("Disable Alarm Sevrty")
 13164         interest(1)
 20366         menu(menuAlarmSevr)
 13165         promptgroup("70 - Alarm")
 20367         interest(1)
 13166         menu(menuAlarmSevr)
 20368         promptgroup("70 - Alarm")
       
 20369     }
       
 20370     field(LCNT, DBF_UCHAR) {
       
 20371         special(SPC_NOMOD)
       
 20372         interest(2)
       
 20373         prompt("Lock Count")
       
 20374     }
       
 20375     field(PACT, DBF_UCHAR) {
       
 20376         prompt("Record active")
       
 20377         special(SPC_NOMOD)
       
 20378         interest(1)
       
 20379     }
       
 20380     field(PUTF, DBF_UCHAR) {
       
 20381         interest(1)
       
 20382         special(SPC_NOMOD)
       
 20383         prompt("dbPutField process")
       
 20384     }
       
 20385     field(RPRO, DBF_UCHAR) {
       
 20386         prompt("Reprocess ")
       
 20387         interest(1)
       
 20388         special(SPC_NOMOD)
       
 20389     }
       
 20390     field(ASP, DBF_NOACCESS) {
       
 20391         interest(4)
       
 20392         special(SPC_NOMOD)
       
 20393         extra("struct asgMember    *asp")
       
 20394         prompt("Access Security Pvt")
       
 20395     }
       
 20396     field(PPN, DBF_NOACCESS) {
       
 20397         extra("struct processNotify *ppn")
       
 20398         prompt("pprocessNotify")
       
 20399         interest(4)
       
 20400         special(SPC_NOMOD)
       
 20401     }
       
 20402     field(PPNR, DBF_NOACCESS) {
       
 20403         interest(4)
       
 20404         special(SPC_NOMOD)
       
 20405         prompt("pprocessNotifyRecord")
       
 20406         extra("struct processNotifyRecord *ppnr")
       
 20407     }
       
 20408     field(SPVT, DBF_NOACCESS) {
       
 20409         prompt("Scan Private")
       
 20410         extra("struct scan_element *spvt")
       
 20411         special(SPC_NOMOD)
       
 20412         interest(4)
       
 20413     }
       
 20414     field(RSET, DBF_NOACCESS) {
       
 20415         extra("struct typed_rset   *rset")
       
 20416         prompt("Address of RSET")
       
 20417         special(SPC_NOMOD)
       
 20418         interest(4)
       
 20419     }
       
 20420     field(DSET, DBF_NOACCESS) {
       
 20421         special(SPC_NOMOD)
       
 20422         interest(4)
       
 20423         prompt("DSET address")
       
 20424         extra("struct dset         *dset")
       
 20425     }
       
 20426     field(DPVT, DBF_NOACCESS) {
       
 20427         interest(4)
       
 20428         special(SPC_NOMOD)
       
 20429         prompt("Device Private")
       
 20430         extra("void                *dpvt")
       
 20431     }
       
 20432     field(RDES, DBF_NOACCESS) {
       
 20433         special(SPC_NOMOD)
       
 20434         interest(4)
       
 20435         prompt("Address of dbRecordType")
       
 20436         extra("struct dbRecordType *rdes")
       
 20437     }
       
 20438     field(LSET, DBF_NOACCESS) {
       
 20439         interest(4)
       
 20440         special(SPC_NOMOD)
       
 20441         extra("struct lockRecord   *lset")
       
 20442         prompt("Lock Set")
       
 20443     }
       
 20444     field(PRIO, DBF_MENU) {
       
 20445         special(SPC_SCAN)
       
 20446         interest(1)
       
 20447         menu(menuPriority)
       
 20448         promptgroup("20 - Scan")
       
 20449         prompt("Scheduling Priority")
       
 20450     }
       
 20451     field(TPRO, DBF_UCHAR) {
       
 20452         prompt("Trace Processing")
       
 20453     }
       
 20454     field(BKPT, DBF_NOACCESS) {
       
 20455         special(SPC_NOMOD)
       
 20456         interest(1)
       
 20457         prompt("Break Point")
       
 20458         extra("char                bkpt")
       
 20459     }
       
 20460     field(UDF, DBF_UCHAR) {
       
 20461         initial("1")
       
 20462         prompt("Undefined")
       
 20463         interest(1)
       
 20464         promptgroup("10 - Common")
       
 20465         pp(TRUE)
       
 20466     }
       
 20467     field(UDFS, DBF_MENU) {
       
 20468         promptgroup("70 - Alarm")
       
 20469         interest(1)
       
 20470         menu(menuAlarmSevr)
       
 20471         prompt("Undefined Alarm Sevrty")
       
 20472         initial("INVALID")
       
 20473     }
       
 20474     field(TIME, DBF_NOACCESS) {
       
 20475         extra("epicsTimeStamp      time")
       
 20476         prompt("Time")
       
 20477         special(SPC_NOMOD)
       
 20478         interest(2)
       
 20479     }
       
 20480     field(FLNK, DBF_FWDLINK) {
       
 20481         prompt("Forward Process Link")
       
 20482         interest(1)
       
 20483         promptgroup("20 - Scan")
       
 20484     }
       
 20485     field(VAL, DBF_DOUBLE) {
       
 20486         asl(ASL0)
       
 20487         prompt("Result")
       
 20488         special(SPC_NOMOD)
       
 20489         promptgroup("40 - Input")
       
 20490     }
       
 20491     field(SELM, DBF_MENU) {
       
 20492         prompt("Select Mechanism")
       
 20493         menu(selSELM)
       
 20494         promptgroup("30 - Action")
       
 20495     }
       
 20496     field(SELN, DBF_USHORT) {
       
 20497         prompt("Index value")
       
 20498     }
       
 20499     field(PREC, DBF_SHORT) {
       
 20500         prompt("Display Precision")
       
 20501         interest(1)
       
 20502         promptgroup("80 - Display")
       
 20503     }
       
 20504     field(NVL, DBF_INLINK) {
       
 20505         prompt("Index Value Location")
       
 20506         interest(1)
       
 20507         promptgroup("30 - Action")
       
 20508     }
       
 20509     field(INPA, DBF_INLINK) {
       
 20510         prompt("Input A")
       
 20511         interest(1)
       
 20512         promptgroup("41 - Input A-F")
       
 20513     }
       
 20514     field(INPB, DBF_INLINK) {
       
 20515         interest(1)
       
 20516         promptgroup("41 - Input A-F")
       
 20517         prompt("Input B")
       
 20518     }
       
 20519     field(INPC, DBF_INLINK) {
       
 20520         interest(1)
       
 20521         promptgroup("41 - Input A-F")
       
 20522         prompt("Input C")
       
 20523     }
       
 20524     field(INPD, DBF_INLINK) {
       
 20525         prompt("Input D")
       
 20526         promptgroup("41 - Input A-F")
       
 20527         interest(1)
       
 20528     }
       
 20529     field(INPE, DBF_INLINK) {
       
 20530         promptgroup("41 - Input A-F")
       
 20531         interest(1)
       
 20532         prompt("Input E")
       
 20533     }
       
 20534     field(INPF, DBF_INLINK) {
       
 20535         prompt("Input F")
       
 20536         interest(1)
       
 20537         promptgroup("41 - Input A-F")
       
 20538     }
       
 20539     field(INPG, DBF_INLINK) {
       
 20540         prompt("Input G")
       
 20541         interest(1)
       
 20542         promptgroup("42 - Input G-L")
       
 20543     }
       
 20544     field(INPH, DBF_INLINK) {
       
 20545         interest(1)
       
 20546         promptgroup("42 - Input G-L")
       
 20547         prompt("Input H")
       
 20548     }
       
 20549     field(INPI, DBF_INLINK) {
       
 20550         prompt("Input I")
       
 20551         promptgroup("42 - Input G-L")
       
 20552         interest(1)
       
 20553     }
       
 20554     field(INPJ, DBF_INLINK) {
       
 20555         promptgroup("42 - Input G-L")
       
 20556         interest(1)
       
 20557         prompt("Input J")
       
 20558     }
       
 20559     field(INPK, DBF_INLINK) {
       
 20560         prompt("Input K")
       
 20561         interest(1)
       
 20562         promptgroup("42 - Input G-L")
       
 20563     }
       
 20564     field(INPL, DBF_INLINK) {
       
 20565         promptgroup("42 - Input G-L")
       
 20566         interest(1)
       
 20567         prompt("Input L")
       
 20568     }
       
 20569     field(EGU, DBF_STRING) {
       
 20570         prompt("Engineering Units")
       
 20571         size(16)
       
 20572         promptgroup("80 - Display")
       
 20573         prop(YES)
       
 20574         interest(1)
       
 20575     }
       
 20576     field(HOPR, DBF_DOUBLE) {
       
 20577         prop(YES)
       
 20578         interest(1)
       
 20579         promptgroup("80 - Display")
       
 20580         prompt("High Operating Rng")
       
 20581     }
       
 20582     field(LOPR, DBF_DOUBLE) {
       
 20583         prop(YES)
       
 20584         interest(1)
       
 20585         promptgroup("80 - Display")
       
 20586         prompt("Low Operating Range")
       
 20587     }
       
 20588     field(HIHI, DBF_DOUBLE) {
       
 20589         prompt("Hihi Alarm Limit")
       
 20590         promptgroup("70 - Alarm")
       
 20591         pp(TRUE)
       
 20592         prop(YES)
       
 20593         interest(1)
       
 20594     }
       
 20595     field(LOLO, DBF_DOUBLE) {
       
 20596         pp(TRUE)
       
 20597         promptgroup("70 - Alarm")
       
 20598         interest(1)
       
 20599         prop(YES)
       
 20600         prompt("Lolo Alarm Limit")
       
 20601     }
       
 20602     field(HIGH, DBF_DOUBLE) {
       
 20603         prop(YES)
       
 20604         interest(1)
       
 20605         promptgroup("70 - Alarm")
       
 20606         pp(TRUE)
       
 20607         prompt("High Alarm Limit")
       
 20608     }
       
 20609     field(LOW, DBF_DOUBLE) {
       
 20610         prompt("Low Alarm Limit")
       
 20611         interest(1)
       
 20612         prop(YES)
       
 20613         pp(TRUE)
       
 20614         promptgroup("70 - Alarm")
       
 20615     }
       
 20616     field(HHSV, DBF_MENU) {
       
 20617         prompt("Hihi Severity")
       
 20618         interest(1)
       
 20619         menu(menuAlarmSevr)
       
 20620         prop(YES)
       
 20621         pp(TRUE)
       
 20622         promptgroup("70 - Alarm")
       
 20623     }
       
 20624     field(LLSV, DBF_MENU) {
       
 20625         prompt("Lolo Severity")
       
 20626         interest(1)
       
 20627         menu(menuAlarmSevr)
       
 20628         prop(YES)
       
 20629         promptgroup("70 - Alarm")
       
 20630         pp(TRUE)
       
 20631     }
       
 20632     field(HSV, DBF_MENU) {
       
 20633         prop(YES)
       
 20634         menu(menuAlarmSevr)
       
 20635         interest(1)
       
 20636         promptgroup("70 - Alarm")
       
 20637         pp(TRUE)
       
 20638         prompt("High Severity")
       
 20639     }
       
 20640     field(LSV, DBF_MENU) {
       
 20641         interest(1)
       
 20642         menu(menuAlarmSevr)
       
 20643         prop(YES)
       
 20644         promptgroup("70 - Alarm")
       
 20645         pp(TRUE)
       
 20646         prompt("Low Severity")
       
 20647     }
       
 20648     field(HYST, DBF_DOUBLE) {
       
 20649         promptgroup("70 - Alarm")
       
 20650         interest(1)
       
 20651         prompt("Alarm Deadband")
       
 20652     }
       
 20653     field(ADEL, DBF_DOUBLE) {
       
 20654         prompt("Archive Deadband")
       
 20655         promptgroup("80 - Display")
       
 20656         interest(1)
       
 20657     }
       
 20658     field(MDEL, DBF_DOUBLE) {
       
 20659         promptgroup("80 - Display")
       
 20660         interest(1)
       
 20661         prompt("Monitor Deadband")
       
 20662     }
       
 20663     field(A, DBF_DOUBLE) {
       
 20664         prompt("Value of Input A")
       
 20665         pp(TRUE)
       
 20666     }
       
 20667     field(B, DBF_DOUBLE) {
       
 20668         prompt("Value of Input B")
       
 20669         pp(TRUE)
       
 20670     }
       
 20671     field(C, DBF_DOUBLE) {
       
 20672         pp(TRUE)
       
 20673         prompt("Value of Input C")
       
 20674     }
       
 20675     field(D, DBF_DOUBLE) {
       
 20676         pp(TRUE)
       
 20677         prompt("Value of Input D")
       
 20678     }
       
 20679     field(E, DBF_DOUBLE) {
       
 20680         pp(TRUE)
       
 20681         prompt("Value of Input E")
       
 20682     }
       
 20683     field(F, DBF_DOUBLE) {
       
 20684         pp(TRUE)
       
 20685         prompt("Value of Input F")
       
 20686     }
       
 20687     field(G, DBF_DOUBLE) {
       
 20688         prompt("Value of Input G")
       
 20689         pp(TRUE)
       
 20690     }
       
 20691     field(H, DBF_DOUBLE) {
       
 20692         prompt("Value of Input H")
       
 20693         pp(TRUE)
       
 20694     }
       
 20695     field(I, DBF_DOUBLE) {
       
 20696         prompt("Value of Input I")
       
 20697         pp(TRUE)
       
 20698     }
       
 20699     field(J, DBF_DOUBLE) {
       
 20700         pp(TRUE)
       
 20701         prompt("Value of Input J")
       
 20702     }
       
 20703     field(K, DBF_DOUBLE) {
       
 20704         pp(TRUE)
       
 20705         prompt("Value of Input K")
       
 20706     }
       
 20707     field(L, DBF_DOUBLE) {
       
 20708         pp(TRUE)
       
 20709         prompt("Value of Input L")
       
 20710     }
       
 20711     field(LA, DBF_DOUBLE) {
       
 20712         special(SPC_NOMOD)
       
 20713         interest(3)
       
 20714         prompt("Prev Value of A")
       
 20715     }
       
 20716     field(LB, DBF_DOUBLE) {
       
 20717         prompt("Prev Value of B")
       
 20718         special(SPC_NOMOD)
       
 20719         interest(3)
       
 20720     }
       
 20721     field(LC, DBF_DOUBLE) {
       
 20722         prompt("Prev Value of C")
       
 20723         interest(3)
       
 20724         special(SPC_NOMOD)
       
 20725     }
       
 20726     field(LD, DBF_DOUBLE) {
       
 20727         prompt("Prev Value of D")
       
 20728         interest(3)
       
 20729         special(SPC_NOMOD)
       
 20730     }
       
 20731     field(LE, DBF_DOUBLE) {
       
 20732         prompt("Prev Value of E")
       
 20733         interest(3)
       
 20734         special(SPC_NOMOD)
       
 20735     }
       
 20736     field(LF, DBF_DOUBLE) {
       
 20737         interest(3)
       
 20738         special(SPC_NOMOD)
       
 20739         prompt("Prev Value of F")
       
 20740     }
       
 20741     field(LG, DBF_DOUBLE) {
       
 20742         prompt("Prev Value of G")
       
 20743         interest(3)
       
 20744         special(SPC_NOMOD)
       
 20745     }
       
 20746     field(LH, DBF_DOUBLE) {
       
 20747         prompt("Prev Value of H")
       
 20748         special(SPC_NOMOD)
       
 20749         interest(3)
       
 20750     }
       
 20751     field(LI, DBF_DOUBLE) {
       
 20752         special(SPC_NOMOD)
       
 20753         interest(3)
       
 20754         prompt("Prev Value of I")
       
 20755     }
       
 20756     field(LJ, DBF_DOUBLE) {
       
 20757         prompt("Prev Value of J")
       
 20758         special(SPC_NOMOD)
       
 20759         interest(3)
       
 20760     }
       
 20761     field(LK, DBF_DOUBLE) {
       
 20762         prompt("Prev Value of K")
       
 20763         interest(3)
       
 20764         special(SPC_NOMOD)
       
 20765     }
       
 20766     field(LL, DBF_DOUBLE) {
       
 20767         prompt("Prev Value of L")
       
 20768         interest(3)
       
 20769         special(SPC_NOMOD)
       
 20770     }
       
 20771     field(LALM, DBF_DOUBLE) {
       
 20772         prompt("Last Value Alarmed")
       
 20773         special(SPC_NOMOD)
       
 20774         interest(3)
       
 20775     }
       
 20776     field(ALST, DBF_DOUBLE) {
       
 20777         prompt("Last Value Archived")
       
 20778         special(SPC_NOMOD)
       
 20779         interest(3)
       
 20780     }
       
 20781     field(MLST, DBF_DOUBLE) {
       
 20782         prompt("Last Val Monitored")
       
 20783         interest(3)
       
 20784         special(SPC_NOMOD)
       
 20785     }
       
 20786     field(NLST, DBF_USHORT) {
       
 20787         special(SPC_NOMOD)
       
 20788         interest(3)
       
 20789         prompt("Last Index Monitored")
       
 20790     }
       
 20791 }
       
 20792 recordtype(ao) {
       
 20793     %#include "epicsTypes.h"
       
 20794     %#include "link.h"
       
 20795     %#include "epicsMutex.h"
       
 20796     %#include "ellLib.h"
       
 20797     %#include "epicsTime.h"
       
 20798     %#include "callback.h"
       
 20799     field(NAME, DBF_STRING) {
       
 20800         special(SPC_NOMOD)
       
 20801         size(61)
       
 20802         prompt("Record Name")
       
 20803     }
       
 20804     field(DESC, DBF_STRING) {
       
 20805         promptgroup("10 - Common")
       
 20806         size(41)
       
 20807         prompt("Descriptor")
       
 20808     }
       
 20809     field(ASG, DBF_STRING) {
       
 20810         promptgroup("10 - Common")
       
 20811         special(SPC_AS)
       
 20812         prompt("Access Security Group")
       
 20813         size(29)
       
 20814     }
       
 20815     field(SCAN, DBF_MENU) {
       
 20816         prompt("Scan Mechanism")
       
 20817         special(SPC_SCAN)
       
 20818         menu(menuScan)
       
 20819         interest(1)
       
 20820         promptgroup("20 - Scan")
       
 20821     }
       
 20822     field(PINI, DBF_MENU) {
       
 20823         interest(1)
       
 20824         menu(menuPini)
       
 20825         promptgroup("20 - Scan")
       
 20826         prompt("Process at iocInit")
       
 20827     }
       
 20828     field(PHAS, DBF_SHORT) {
       
 20829         promptgroup("20 - Scan")
       
 20830         special(SPC_SCAN)
       
 20831         interest(1)
       
 20832         prompt("Scan Phase")
       
 20833     }
       
 20834     field(EVNT, DBF_STRING) {
       
 20835         size(40)
       
 20836         prompt("Event Name")
       
 20837         interest(1)
       
 20838         special(SPC_SCAN)
       
 20839         promptgroup("20 - Scan")
       
 20840     }
       
 20841     field(TSE, DBF_SHORT) {
       
 20842         prompt("Time Stamp Event")
       
 20843         interest(1)
       
 20844         promptgroup("20 - Scan")
       
 20845     }
       
 20846     field(TSEL, DBF_INLINK) {
       
 20847         prompt("Time Stamp Link")
       
 20848         promptgroup("20 - Scan")
       
 20849         interest(1)
       
 20850     }
       
 20851     field(DTYP, DBF_DEVICE) {
       
 20852         prompt("Device Type")
       
 20853         promptgroup("10 - Common")
       
 20854         interest(1)
       
 20855     }
       
 20856     field(DISV, DBF_SHORT) {
       
 20857         initial("1")
       
 20858         prompt("Disable Value")
       
 20859         promptgroup("20 - Scan")
       
 20860     }
       
 20861     field(DISA, DBF_SHORT) {
       
 20862         prompt("Disable")
       
 20863     }
       
 20864     field(SDIS, DBF_INLINK) {
       
 20865         promptgroup("20 - Scan")
       
 20866         interest(1)
       
 20867         prompt("Scanning Disable")
       
 20868     }
       
 20869     field(MLOK, DBF_NOACCESS) {
       
 20870         special(SPC_NOMOD)
       
 20871         interest(4)
       
 20872         extra("epicsMutexId        mlok")
       
 20873         prompt("Monitor lock")
       
 20874     }
       
 20875     field(MLIS, DBF_NOACCESS) {
       
 20876         prompt("Monitor List")
       
 20877         extra("ELLLIST             mlis")
       
 20878         interest(4)
       
 20879         special(SPC_NOMOD)
       
 20880     }
       
 20881     field(BKLNK, DBF_NOACCESS) {
       
 20882         special(SPC_NOMOD)
       
 20883         interest(4)
       
 20884         prompt("Backwards link tracking")
       
 20885         extra("ELLLIST             bklnk")
       
 20886     }
       
 20887     field(DISP, DBF_UCHAR) {
       
 20888         prompt("Disable putField")
       
 20889     }
       
 20890     field(PROC, DBF_UCHAR) {
       
 20891         interest(3)
       
 20892         pp(TRUE)
       
 20893         prompt("Force Processing")
       
 20894     }
       
 20895     field(STAT, DBF_MENU) {
       
 20896         initial("UDF")
       
 20897         prompt("Alarm Status")
       
 20898         menu(menuAlarmStat)
       
 20899         special(SPC_NOMOD)
       
 20900     }
       
 20901     field(SEVR, DBF_MENU) {
       
 20902         special(SPC_NOMOD)
       
 20903         menu(menuAlarmSevr)
       
 20904         prompt("Alarm Severity")
       
 20905     }
       
 20906     field(NSTA, DBF_MENU) {
       
 20907         special(SPC_NOMOD)
       
 20908         interest(2)
       
 20909         menu(menuAlarmStat)
       
 20910         prompt("New Alarm Status")
       
 20911     }
       
 20912     field(NSEV, DBF_MENU) {
       
 20913         prompt("New Alarm Severity")
       
 20914         special(SPC_NOMOD)
       
 20915         menu(menuAlarmSevr)
       
 20916         interest(2)
       
 20917     }
       
 20918     field(ACKS, DBF_MENU) {
       
 20919         prompt("Alarm Ack Severity")
       
 20920         special(SPC_NOMOD)
       
 20921         interest(2)
       
 20922         menu(menuAlarmSevr)
       
 20923     }
       
 20924     field(ACKT, DBF_MENU) {
       
 20925         prompt("Alarm Ack Transient")
       
 20926         initial("YES")
       
 20927         promptgroup("70 - Alarm")
       
 20928         special(SPC_NOMOD)
       
 20929         menu(menuYesNo)
       
 20930         interest(2)
       
 20931     }
       
 20932     field(DISS, DBF_MENU) {
       
 20933         promptgroup("70 - Alarm")
       
 20934         menu(menuAlarmSevr)
       
 20935         interest(1)
       
 20936         prompt("Disable Alarm Sevrty")
 13167     }
 20937     }
 13168     field(LCNT, DBF_UCHAR) {
 20938     field(LCNT, DBF_UCHAR) {
 13169         prompt("Lock Count")
 20939         prompt("Lock Count")
 13170         interest(2)
 20940         special(SPC_NOMOD)
 13171         special(SPC_NOMOD)
 20941         interest(2)
 13172     }
 20942     }
 13173     field(PACT, DBF_UCHAR) {
 20943     field(PACT, DBF_UCHAR) {
 13174         special(SPC_NOMOD)
       
 13175         interest(1)
       
 13176         prompt("Record active")
 20944         prompt("Record active")
       
 20945         special(SPC_NOMOD)
       
 20946         interest(1)
 13177     }
 20947     }
 13178     field(PUTF, DBF_UCHAR) {
 20948     field(PUTF, DBF_UCHAR) {
 13179         interest(1)
 20949         interest(1)
 13180         special(SPC_NOMOD)
 20950         special(SPC_NOMOD)
 13181         prompt("dbPutField process")
 20951         prompt("dbPutField process")
 13182     }
 20952     }
 13183     field(RPRO, DBF_UCHAR) {
 20953     field(RPRO, DBF_UCHAR) {
 13184         special(SPC_NOMOD)
       
 13185         interest(1)
       
 13186         prompt("Reprocess ")
 20954         prompt("Reprocess ")
       
 20955         special(SPC_NOMOD)
       
 20956         interest(1)
 13187     }
 20957     }
 13188     field(ASP, DBF_NOACCESS) {
 20958     field(ASP, DBF_NOACCESS) {
 13189         prompt("Access Security Pvt")
 20959         prompt("Access Security Pvt")
 13190         special(SPC_NOMOD)
       
 13191         interest(4)
       
 13192         extra("struct asgMember    *asp")
 20960         extra("struct asgMember    *asp")
       
 20961         special(SPC_NOMOD)
       
 20962         interest(4)
 13193     }
 20963     }
 13194     field(PPN, DBF_NOACCESS) {
 20964     field(PPN, DBF_NOACCESS) {
       
 20965         interest(4)
       
 20966         special(SPC_NOMOD)
 13195         extra("struct processNotify *ppn")
 20967         extra("struct processNotify *ppn")
 13196         interest(4)
       
 13197         special(SPC_NOMOD)
       
 13198         prompt("pprocessNotify")
 20968         prompt("pprocessNotify")
 13199     }
 20969     }
 13200     field(PPNR, DBF_NOACCESS) {
 20970     field(PPNR, DBF_NOACCESS) {
 13201         special(SPC_NOMOD)
 20971         interest(4)
 13202         interest(4)
 20972         special(SPC_NOMOD)
       
 20973         extra("struct processNotifyRecord *ppnr")
 13203         prompt("pprocessNotifyRecord")
 20974         prompt("pprocessNotifyRecord")
 13204         extra("struct processNotifyRecord *ppnr")
       
 13205     }
 20975     }
 13206     field(SPVT, DBF_NOACCESS) {
 20976     field(SPVT, DBF_NOACCESS) {
       
 20977         interest(4)
       
 20978         special(SPC_NOMOD)
 13207         prompt("Scan Private")
 20979         prompt("Scan Private")
 13208         special(SPC_NOMOD)
       
 13209         interest(4)
       
 13210         extra("struct scan_element *spvt")
 20980         extra("struct scan_element *spvt")
 13211     }
 20981     }
 13212     field(RSET, DBF_NOACCESS) {
 20982     field(RSET, DBF_NOACCESS) {
 13213         interest(4)
 20983         interest(4)
 13214         special(SPC_NOMOD)
 20984         special(SPC_NOMOD)
 13215         prompt("Address of RSET")
 20985         prompt("Address of RSET")
 13216         extra("struct typed_rset   *rset")
 20986         extra("struct typed_rset   *rset")
 13217     }
 20987     }
 13218     field(DSET, DBF_NOACCESS) {
 20988     field(DSET, DBF_NOACCESS) {
       
 20989         interest(4)
       
 20990         special(SPC_NOMOD)
       
 20991         extra("struct dset         *dset")
 13219         prompt("DSET address")
 20992         prompt("DSET address")
 13220         interest(4)
       
 13221         special(SPC_NOMOD)
       
 13222         extra("struct dset         *dset")
       
 13223     }
 20993     }
 13224     field(DPVT, DBF_NOACCESS) {
 20994     field(DPVT, DBF_NOACCESS) {
       
 20995         interest(4)
       
 20996         special(SPC_NOMOD)
       
 20997         extra("void                *dpvt")
 13225         prompt("Device Private")
 20998         prompt("Device Private")
 13226         interest(4)
       
 13227         special(SPC_NOMOD)
       
 13228         extra("void                *dpvt")
       
 13229     }
 20999     }
 13230     field(RDES, DBF_NOACCESS) {
 21000     field(RDES, DBF_NOACCESS) {
       
 21001         prompt("Address of dbRecordType")
 13231         extra("struct dbRecordType *rdes")
 21002         extra("struct dbRecordType *rdes")
 13232         prompt("Address of dbRecordType")
       
 13233         interest(4)
 21003         interest(4)
 13234         special(SPC_NOMOD)
 21004         special(SPC_NOMOD)
 13235     }
 21005     }
 13236     field(LSET, DBF_NOACCESS) {
 21006     field(LSET, DBF_NOACCESS) {
 13237         special(SPC_NOMOD)
       
 13238         interest(4)
       
 13239         prompt("Lock Set")
 21007         prompt("Lock Set")
 13240         extra("struct lockRecord   *lset")
 21008         extra("struct lockRecord   *lset")
       
 21009         interest(4)
       
 21010         special(SPC_NOMOD)
 13241     }
 21011     }
 13242     field(PRIO, DBF_MENU) {
 21012     field(PRIO, DBF_MENU) {
 13243         prompt("Scheduling Priority")
 21013         prompt("Scheduling Priority")
 13244         promptgroup("20 - Scan")
 21014         promptgroup("20 - Scan")
 13245         interest(1)
       
 13246         special(SPC_SCAN)
 21015         special(SPC_SCAN)
 13247         menu(menuPriority)
 21016         menu(menuPriority)
       
 21017         interest(1)
 13248     }
 21018     }
 13249     field(TPRO, DBF_UCHAR) {
 21019     field(TPRO, DBF_UCHAR) {
 13250         prompt("Trace Processing")
 21020         prompt("Trace Processing")
 13251     }
 21021     }
 13252     field(BKPT, DBF_NOACCESS) {
 21022     field(BKPT, DBF_NOACCESS) {
 13253         extra("char                bkpt")
 21023         extra("char                bkpt")
 13254         prompt("Break Point")
 21024         prompt("Break Point")
 13255         special(SPC_NOMOD)
 21025         interest(1)
 13256         interest(1)
 21026         special(SPC_NOMOD)
 13257     }
 21027     }
 13258     field(UDF, DBF_UCHAR) {
 21028     field(UDF, DBF_UCHAR) {
       
 21029         interest(1)
       
 21030         promptgroup("10 - Common")
       
 21031         pp(TRUE)
       
 21032         initial("1")
 13259         prompt("Undefined")
 21033         prompt("Undefined")
 13260         interest(1)
       
 13261         promptgroup("10 - Common")
       
 13262         initial("1")
       
 13263         pp(TRUE)
       
 13264     }
 21034     }
 13265     field(UDFS, DBF_MENU) {
 21035     field(UDFS, DBF_MENU) {
 13266         initial("INVALID")
 21036         initial("INVALID")
 13267         menu(menuAlarmSevr)
       
 13268         prompt("Undefined Alarm Sevrty")
 21037         prompt("Undefined Alarm Sevrty")
 13269         promptgroup("70 - Alarm")
 21038         interest(1)
 13270         interest(1)
 21039         menu(menuAlarmSevr)
       
 21040         promptgroup("70 - Alarm")
 13271     }
 21041     }
 13272     field(TIME, DBF_NOACCESS) {
 21042     field(TIME, DBF_NOACCESS) {
 13273         extra("epicsTimeStamp      time")
 21043         extra("epicsTimeStamp      time")
 13274         interest(2)
       
 13275         special(SPC_NOMOD)
       
 13276         prompt("Time")
 21044         prompt("Time")
       
 21045         interest(2)
       
 21046         special(SPC_NOMOD)
 13277     }
 21047     }
 13278     field(FLNK, DBF_FWDLINK) {
 21048     field(FLNK, DBF_FWDLINK) {
 13279         promptgroup("20 - Scan")
       
 13280         interest(1)
       
 13281         prompt("Forward Process Link")
 21049         prompt("Forward Process Link")
 13282     }
 21050         interest(1)
 13283     field(VAL, DBF_LONG) {
 21051         promptgroup("20 - Scan")
 13284         pp(TRUE)
 21052     }
 13285         prompt("Used to trigger")
 21053     field(VAL, DBF_DOUBLE) {
 13286         asl(ASL0)
 21054         asl(ASL0)
 13287     }
 21055         prompt("Desired Output")
 13288     field(SELM, DBF_MENU) {
 21056         pp(TRUE)
 13289         prompt("Select Mechanism")
 21057         promptgroup("50 - Output")
 13290         promptgroup("30 - Action")
 21058     }
 13291         interest(1)
 21059     field(OVAL, DBF_DOUBLE) {
 13292         menu(seqSELM)
 21060         prompt("Output Value")
 13293     }
 21061     }
 13294     field(SELN, DBF_USHORT) {
 21062     field(OUT, DBF_OUTLINK) {
 13295         initial("1")
 21063         prompt("Output Specification")
 13296         interest(1)
 21064         interest(1)
 13297         prompt("Link Selection")
 21065         promptgroup("50 - Output")
 13298     }
 21066     }
 13299     field(SELL, DBF_INLINK) {
 21067     field(OROC, DBF_DOUBLE) {
 13300         prompt("Link Selection Loc")
 21068         prompt("Output Rate of Change")
 13301         interest(1)
 21069         interest(1)
 13302         promptgroup("30 - Action")
 21070         promptgroup("50 - Output")
 13303     }
 21071     }
 13304     field(OFFS, DBF_SHORT) {
 21072     field(DOL, DBF_INLINK) {
 13305         promptgroup("30 - Action")
 21073         prompt("Desired Output Loc")
 13306         interest(1)
 21074         promptgroup("40 - Input")
 13307         prompt("Offset for Specified")
 21075         interest(1)
 13308         initial("0")
 21076     }
 13309     }
 21077     field(OMSL, DBF_MENU) {
 13310     field(SHFT, DBF_SHORT) {
 21078         prompt("Output Mode Select")
 13311         initial("-1")
 21079         menu(menuOmsl)
 13312         interest(1)
 21080         interest(1)
 13313         promptgroup("30 - Action")
 21081         promptgroup("50 - Output")
 13314         prompt("Shift for Mask mode")
 21082     }
 13315     }
 21083     field(OIF, DBF_MENU) {
 13316     field(OLDN, DBF_USHORT) {
 21084         menu(aoOIF)
 13317         interest(4)
 21085         interest(1)
 13318         prompt("Old Selection")
 21086         promptgroup("50 - Output")
       
 21087         prompt("Out Full/Incremental")
 13319     }
 21088     }
 13320     field(PREC, DBF_SHORT) {
 21089     field(PREC, DBF_SHORT) {
 13321         prompt("Display Precision")
 21090         prompt("Display Precision")
 13322         interest(1)
 21091         interest(1)
       
 21092         prop(YES)
 13323         promptgroup("80 - Display")
 21093         promptgroup("80 - Display")
 13324     }
 21094     }
 13325     field(DLY0, DBF_DOUBLE) {
 21095     field(LINR, DBF_MENU) {
 13326         prompt("Delay 0")
 21096         prompt("Linearization")
 13327         promptgroup("41 - Link 0-7")
 21097         promptgroup("60 - Convert")
 13328         interest(1)
 21098         pp(TRUE)
 13329     }
 21099         special(SPC_LINCONV)
 13330     field(DOL0, DBF_INLINK) {
 21100         interest(1)
 13331         prompt("Input link 0")
 21101         menu(menuConvert)
 13332         interest(1)
 21102     }
 13333         promptgroup("41 - Link 0-7")
 21103     field(EGUF, DBF_DOUBLE) {
 13334     }
 21104         prompt("Eng Units Full")
 13335     field(DO0, DBF_DOUBLE) {
 21105         interest(1)
 13336         interest(1)
 21106         special(SPC_LINCONV)
 13337         prompt("Value 0")
 21107         promptgroup("60 - Convert")
 13338     }
 21108         pp(TRUE)
 13339     field(LNK0, DBF_OUTLINK) {
 21109     }
 13340         prompt("Output Link 0")
 21110     field(EGUL, DBF_DOUBLE) {
 13341         promptgroup("41 - Link 0-7")
 21111         prompt("Eng Units Low")
 13342         interest(1)
 21112         interest(1)
 13343     }
 21113         special(SPC_LINCONV)
 13344     field(DLY1, DBF_DOUBLE) {
 21114         promptgroup("60 - Convert")
 13345         promptgroup("41 - Link 0-7")
 21115         pp(TRUE)
 13346         interest(1)
 21116     }
 13347         prompt("Delay 1")
 21117     field(EGU, DBF_STRING) {
 13348     }
 21118         prompt("Engineering Units")
 13349     field(DOL1, DBF_INLINK) {
 21119         size(16)
 13350         interest(1)
 21120         promptgroup("80 - Display")
 13351         promptgroup("41 - Link 0-7")
 21121         interest(1)
 13352         prompt("Input link1")
 21122         prop(YES)
 13353     }
 21123     }
 13354     field(DO1, DBF_DOUBLE) {
 21124     field(ROFF, DBF_ULONG) {
 13355         prompt("Value 1")
 21125         prompt("Raw Offset")
 13356         interest(1)
 21126         pp(TRUE)
 13357     }
 21127         interest(2)
 13358     field(LNK1, DBF_OUTLINK) {
 21128     }
 13359         prompt("Output Link 1")
 21129     field(EOFF, DBF_DOUBLE) {
 13360         interest(1)
 21130         promptgroup("60 - Convert")
 13361         promptgroup("41 - Link 0-7")
 21131         pp(TRUE)
 13362     }
 21132         interest(2)
 13363     field(DLY2, DBF_DOUBLE) {
 21133         prompt("EGU to Raw Offset")
 13364         interest(1)
 21134     }
 13365         promptgroup("41 - Link 0-7")
 21135     field(ESLO, DBF_DOUBLE) {
 13366         prompt("Delay 2")
 21136         pp(TRUE)
 13367     }
 21137         promptgroup("60 - Convert")
 13368     field(DOL2, DBF_INLINK) {
 21138         interest(2)
 13369         promptgroup("41 - Link 0-7")
 21139         prompt("EGU to Raw Slope")
 13370         interest(1)
 21140         initial("1")
 13371         prompt("Input link 2")
 21141     }
 13372     }
 21142     field(DRVH, DBF_DOUBLE) {
 13373     field(DO2, DBF_DOUBLE) {
 21143         promptgroup("30 - Action")
 13374         prompt("Value 2")
 21144         pp(TRUE)
 13375         interest(1)
 21145         interest(1)
 13376     }
 21146         prop(YES)
 13377     field(LNK2, DBF_OUTLINK) {
 21147         prompt("Drive High Limit")
 13378         promptgroup("41 - Link 0-7")
 21148     }
 13379         interest(1)
 21149     field(DRVL, DBF_DOUBLE) {
 13380         prompt("Output Link 2")
 21150         prompt("Drive Low Limit")
 13381     }
 21151         pp(TRUE)
 13382     field(DLY3, DBF_DOUBLE) {
 21152         promptgroup("30 - Action")
 13383         promptgroup("41 - Link 0-7")
 21153         interest(1)
 13384         interest(1)
 21154         prop(YES)
 13385         prompt("Delay 3")
 21155     }
 13386     }
 21156     field(HOPR, DBF_DOUBLE) {
 13387     field(DOL3, DBF_INLINK) {
 21157         prop(YES)
 13388         prompt("Input link 3")
 21158         interest(1)
 13389         promptgroup("41 - Link 0-7")
 21159         promptgroup("80 - Display")
 13390         interest(1)
 21160         prompt("High Operating Range")
 13391     }
 21161     }
 13392     field(DO3, DBF_DOUBLE) {
 21162     field(LOPR, DBF_DOUBLE) {
 13393         interest(1)
 21163         prompt("Low Operating Range")
 13394         prompt("Value 3")
 21164         promptgroup("80 - Display")
 13395     }
 21165         prop(YES)
 13396     field(LNK3, DBF_OUTLINK) {
 21166         interest(1)
 13397         interest(1)
 21167     }
 13398         promptgroup("41 - Link 0-7")
 21168     field(AOFF, DBF_DOUBLE) {
 13399         prompt("Output Link 3")
 21169         prompt("Adjustment Offset")
 13400     }
 21170         interest(1)
 13401     field(DLY4, DBF_DOUBLE) {
 21171         promptgroup("60 - Convert")
 13402         prompt("Delay 4")
 21172         pp(TRUE)
 13403         promptgroup("41 - Link 0-7")
 21173     }
 13404         interest(1)
 21174     field(ASLO, DBF_DOUBLE) {
 13405     }
 21175         prompt("Adjustment Slope")
 13406     field(DOL4, DBF_INLINK) {
 21176         interest(1)
 13407         prompt("Input link 4")
 21177         pp(TRUE)
 13408         interest(1)
 21178         promptgroup("60 - Convert")
 13409         promptgroup("41 - Link 0-7")
 21179     }
 13410     }
 21180     field(HIHI, DBF_DOUBLE) {
 13411     field(DO4, DBF_DOUBLE) {
 21181         interest(1)
 13412         interest(1)
 21182         prop(YES)
 13413         prompt("Value 4")
 21183         pp(TRUE)
 13414     }
 21184         promptgroup("70 - Alarm")
 13415     field(LNK4, DBF_OUTLINK) {
 21185         prompt("Hihi Alarm Limit")
 13416         prompt("Output Link 4")
 21186     }
 13417         interest(1)
 21187     field(LOLO, DBF_DOUBLE) {
 13418         promptgroup("41 - Link 0-7")
 21188         prompt("Lolo Alarm Limit")
 13419     }
 21189         interest(1)
 13420     field(DLY5, DBF_DOUBLE) {
 21190         prop(YES)
 13421         prompt("Delay 5")
 21191         promptgroup("70 - Alarm")
 13422         interest(1)
 21192         pp(TRUE)
 13423         promptgroup("41 - Link 0-7")
 21193     }
 13424     }
 21194     field(HIGH, DBF_DOUBLE) {
 13425     field(DOL5, DBF_INLINK) {
 21195         prompt("High Alarm Limit")
 13426         prompt("Input link 5")
 21196         interest(1)
 13427         interest(1)
 21197         prop(YES)
 13428         promptgroup("41 - Link 0-7")
 21198         promptgroup("70 - Alarm")
 13429     }
 21199         pp(TRUE)
 13430     field(DO5, DBF_DOUBLE) {
 21200     }
 13431         prompt("Value 5")
 21201     field(LOW, DBF_DOUBLE) {
 13432         interest(1)
 21202         prop(YES)
 13433     }
 21203         interest(1)
 13434     field(LNK5, DBF_OUTLINK) {
 21204         pp(TRUE)
 13435         prompt("Output Link 5")
 21205         promptgroup("70 - Alarm")
 13436         promptgroup("41 - Link 0-7")
 21206         prompt("Low Alarm Limit")
 13437         interest(1)
 21207     }
 13438     }
 21208     field(HHSV, DBF_MENU) {
 13439     field(DLY6, DBF_DOUBLE) {
 21209         pp(TRUE)
 13440         promptgroup("41 - Link 0-7")
 21210         promptgroup("70 - Alarm")
 13441         interest(1)
 21211         menu(menuAlarmSevr)
 13442         prompt("Delay 6")
 21212         interest(1)
 13443     }
 21213         prop(YES)
 13444     field(DOL6, DBF_INLINK) {
 21214         prompt("Hihi Severity")
 13445         interest(1)
 21215     }
 13446         promptgroup("41 - Link 0-7")
 21216     field(LLSV, DBF_MENU) {
 13447         prompt("Input link 6")
 21217         prompt("Lolo Severity")
 13448     }
 21218         prop(YES)
 13449     field(DO6, DBF_DOUBLE) {
 21219         menu(menuAlarmSevr)
 13450         prompt("Value 6")
 21220         interest(1)
 13451         interest(1)
 21221         pp(TRUE)
 13452     }
 21222         promptgroup("70 - Alarm")
 13453     field(LNK6, DBF_OUTLINK) {
 21223     }
 13454         promptgroup("41 - Link 0-7")
 21224     field(HSV, DBF_MENU) {
 13455         interest(1)
 21225         pp(TRUE)
 13456         prompt("Output Link 6")
 21226         promptgroup("70 - Alarm")
 13457     }
 21227         menu(menuAlarmSevr)
 13458     field(DLY7, DBF_DOUBLE) {
 21228         prop(YES)
 13459         prompt("Delay 7")
 21229         interest(1)
 13460         promptgroup("41 - Link 0-7")
 21230         prompt("High Severity")
 13461         interest(1)
 21231     }
 13462     }
 21232     field(LSV, DBF_MENU) {
 13463     field(DOL7, DBF_INLINK) {
 21233         prompt("Low Severity")
 13464         interest(1)
 21234         prop(YES)
 13465         promptgroup("41 - Link 0-7")
 21235         menu(menuAlarmSevr)
 13466         prompt("Input link 7")
 21236         interest(1)
 13467     }
 21237         pp(TRUE)
 13468     field(DO7, DBF_DOUBLE) {
 21238         promptgroup("70 - Alarm")
 13469         interest(1)
 21239     }
 13470         prompt("Value 7")
 21240     field(HYST, DBF_DOUBLE) {
 13471     }
 21241         promptgroup("70 - Alarm")
 13472     field(LNK7, DBF_OUTLINK) {
 21242         interest(1)
 13473         interest(1)
 21243         prompt("Alarm Deadband")
 13474         promptgroup("41 - Link 0-7")
 21244     }
 13475         prompt("Output Link 7")
 21245     field(ADEL, DBF_DOUBLE) {
 13476     }
 21246         interest(1)
 13477     field(DLY8, DBF_DOUBLE) {
 21247         promptgroup("80 - Display")
 13478         promptgroup("42 - Link 8-F")
 21248         prompt("Archive Deadband")
 13479         interest(1)
 21249     }
 13480         prompt("Delay 8")
 21250     field(MDEL, DBF_DOUBLE) {
 13481     }
 21251         promptgroup("80 - Display")
 13482     field(DOL8, DBF_INLINK) {
 21252         interest(1)
 13483         interest(1)
 21253         prompt("Monitor Deadband")
 13484         promptgroup("42 - Link 8-F")
 21254     }
 13485         prompt("Input link 8")
 21255     field(RVAL, DBF_LONG) {
 13486     }
 21256         pp(TRUE)
 13487     field(DO8, DBF_DOUBLE) {
 21257         prompt("Current Raw Value")
 13488         interest(1)
 21258     }
 13489         prompt("Value 8")
 21259     field(ORAW, DBF_LONG) {
 13490     }
 21260         prompt("Previous Raw Value")
 13491     field(LNK8, DBF_OUTLINK) {
 21261         special(SPC_NOMOD)
 13492         interest(1)
 21262         interest(3)
 13493         promptgroup("42 - Link 8-F")
 21263     }
 13494         prompt("Output Link 8")
 21264     field(RBV, DBF_LONG) {
 13495     }
 21265         special(SPC_NOMOD)
 13496     field(DLY9, DBF_DOUBLE) {
 21266         prompt("Readback Value")
 13497         promptgroup("42 - Link 8-F")
 21267     }
 13498         interest(1)
 21268     field(ORBV, DBF_LONG) {
 13499         prompt("Delay 9")
 21269         interest(3)
 13500     }
 21270         special(SPC_NOMOD)
 13501     field(DOL9, DBF_INLINK) {
 21271         prompt("Prev Readback Value")
 13502         prompt("Input link 9")
 21272     }
 13503         promptgroup("42 - Link 8-F")
 21273     field(PVAL, DBF_DOUBLE) {
 13504         interest(1)
 21274         prompt("Previous value")
 13505     }
 21275         interest(3)
 13506     field(DO9, DBF_DOUBLE) {
 21276         special(SPC_NOMOD)
 13507         prompt("Value 9")
 21277     }
 13508         interest(1)
 21278     field(LALM, DBF_DOUBLE) {
 13509     }
 21279         interest(3)
 13510     field(LNK9, DBF_OUTLINK) {
 21280         special(SPC_NOMOD)
 13511         prompt("Output Link 9")
 21281         prompt("Last Value Alarmed")
 13512         promptgroup("42 - Link 8-F")
 21282     }
 13513         interest(1)
 21283     field(ALST, DBF_DOUBLE) {
 13514     }
 21284         interest(3)
 13515     field(DLYA, DBF_DOUBLE) {
 21285         special(SPC_NOMOD)
 13516         prompt("Delay 10")
 21286         prompt("Last Value Archived")
 13517         interest(1)
 21287     }
 13518         promptgroup("42 - Link 8-F")
 21288     field(MLST, DBF_DOUBLE) {
 13519     }
 21289         special(SPC_NOMOD)
 13520     field(DOLA, DBF_INLINK) {
 21290         interest(3)
 13521         promptgroup("42 - Link 8-F")
 21291         prompt("Last Val Monitored")
 13522         interest(1)
 21292     }
 13523         prompt("Input link 10")
 21293     field(PBRK, DBF_NOACCESS) {
 13524     }
 21294         interest(4)
 13525     field(DOA, DBF_DOUBLE) {
 21295         special(SPC_NOMOD)
 13526         prompt("Value 10")
 21296         extra("void *   pbrk")
 13527         interest(1)
 21297         prompt("Ptrto brkTable")
 13528     }
 21298     }
 13529     field(LNKA, DBF_OUTLINK) {
 21299     field(INIT, DBF_SHORT) {
 13530         prompt("Output Link 10")
 21300         interest(3)
 13531         interest(1)
 21301         special(SPC_NOMOD)
 13532         promptgroup("42 - Link 8-F")
 21302         prompt("Initialized?")
 13533     }
 21303     }
 13534     field(DLYB, DBF_DOUBLE) {
 21304     field(LBRK, DBF_SHORT) {
 13535         prompt("Delay 11")
 21305         special(SPC_NOMOD)
 13536         interest(1)
 21306         interest(3)
 13537         promptgroup("42 - Link 8-F")
 21307         prompt("LastBreak Point")
 13538     }
 21308     }
 13539     field(DOLB, DBF_INLINK) {
 21309     field(SIOL, DBF_OUTLINK) {
 13540         prompt("Input link 11")
 21310         interest(1)
 13541         interest(1)
 21311         promptgroup("90 - Simulate")
 13542         promptgroup("42 - Link 8-F")
 21312         prompt("Simulation Output Link")
 13543     }
 21313     }
 13544     field(DOB, DBF_DOUBLE) {
 21314     field(SIML, DBF_INLINK) {
 13545         interest(1)
 21315         prompt("Simulation Mode Link")
 13546         prompt("Value 11")
 21316         interest(1)
 13547     }
 21317         promptgroup("90 - Simulate")
 13548     field(LNKB, DBF_OUTLINK) {
 21318     }
 13549         promptgroup("42 - Link 8-F")
 21319     field(SIMM, DBF_MENU) {
 13550         interest(1)
 21320         prompt("Simulation Mode")
 13551         prompt("Output Link 11")
 21321         interest(1)
 13552     }
 21322         menu(menuYesNo)
 13553     field(DLYC, DBF_DOUBLE) {
 21323         special(SPC_MOD)
 13554         prompt("Delay 12")
 21324     }
 13555         interest(1)
 21325     field(SIMS, DBF_MENU) {
 13556         promptgroup("42 - Link 8-F")
 21326         prompt("Simulation Mode Severity")
 13557     }
 21327         interest(2)
 13558     field(DOLC, DBF_INLINK) {
 21328         menu(menuAlarmSevr)
 13559         interest(1)
 21329         promptgroup("90 - Simulate")
 13560         promptgroup("42 - Link 8-F")
 21330     }
 13561         prompt("Input link 12")
 21331     field(OLDSIMM, DBF_MENU) {
 13562     }
 21332         prompt("Prev. Simulation Mode")
 13563     field(DOC, DBF_DOUBLE) {
 21333         interest(4)
 13564         prompt("Value 12")
 21334         menu(menuSimm)
 13565         interest(1)
 21335         special(SPC_NOMOD)
 13566     }
 21336     }
 13567     field(LNKC, DBF_OUTLINK) {
 21337     field(SSCN, DBF_MENU) {
 13568         promptgroup("42 - Link 8-F")
 21338         initial("65535")
 13569         interest(1)
 21339         prompt("Sim. Mode Scan")
 13570         prompt("Output Link 12")
 21340         menu(menuScan)
 13571     }
 21341         interest(1)
 13572     field(DLYD, DBF_DOUBLE) {
 21342         promptgroup("90 - Simulate")
 13573         promptgroup("42 - Link 8-F")
 21343     }
 13574         interest(1)
 21344     field(SDLY, DBF_DOUBLE) {
 13575         prompt("Delay 13")
 21345         initial("-1.0")
 13576     }
 21346         prompt("Sim. Mode Async Delay")
 13577     field(DOLD, DBF_INLINK) {
 21347         interest(2)
 13578         promptgroup("42 - Link 8-F")
 21348         promptgroup("90 - Simulate")
 13579         interest(1)
 21349     }
 13580         prompt("Input link 13")
 21350     field(SIMPVT, DBF_NOACCESS) {
 13581     }
 21351         extra("CALLBACK            *simpvt")
 13582     field(DOD, DBF_DOUBLE) {
 21352         prompt("Sim. Mode Private")
 13583         prompt("Value 13")
 21353         special(SPC_NOMOD)
 13584         interest(1)
 21354         interest(4)
 13585     }
 21355     }
 13586     field(LNKD, DBF_OUTLINK) {
 21356     field(IVOA, DBF_MENU) {
 13587         prompt("Output Link 13")
 21357         prompt("INVALID output action")
 13588         promptgroup("42 - Link 8-F")
 21358         menu(menuIvoa)
 13589         interest(1)
 21359         interest(2)
 13590     }
 21360         promptgroup("50 - Output")
 13591     field(DLYE, DBF_DOUBLE) {
 21361     }
 13592         promptgroup("42 - Link 8-F")
 21362     field(IVOV, DBF_DOUBLE) {
 13593         interest(1)
 21363         promptgroup("50 - Output")
 13594         prompt("Delay 14")
 21364         interest(2)
 13595     }
 21365         prompt("INVALID output value")
 13596     field(DOLE, DBF_INLINK) {
 21366     }
 13597         promptgroup("42 - Link 8-F")
 21367     field(OMOD, DBF_UCHAR) {
 13598         interest(1)
 21368         special(SPC_NOMOD)
 13599         prompt("Input link 14")
 21369         prompt("Was OVAL modified?")
 13600     }
       
 13601     field(DOE, DBF_DOUBLE) {
       
 13602         prompt("Value 14")
       
 13603         interest(1)
       
 13604     }
       
 13605     field(LNKE, DBF_OUTLINK) {
       
 13606         prompt("Output Link 14")
       
 13607         interest(1)
       
 13608         promptgroup("42 - Link 8-F")
       
 13609     }
       
 13610     field(DLYF, DBF_DOUBLE) {
       
 13611         prompt("Delay 15")
       
 13612         promptgroup("42 - Link 8-F")
       
 13613         interest(1)
       
 13614     }
       
 13615     field(DOLF, DBF_INLINK) {
       
 13616         interest(1)
       
 13617         promptgroup("42 - Link 8-F")
       
 13618         prompt("Input link 15")
       
 13619     }
       
 13620     field(DOF, DBF_DOUBLE) {
       
 13621         interest(1)
       
 13622         prompt("Value 15")
       
 13623     }
       
 13624     field(LNKF, DBF_OUTLINK) {
       
 13625         promptgroup("42 - Link 8-F")
       
 13626         interest(1)
       
 13627         prompt("Output Link 15")
       
 13628     }
 21370     }
 13629 }
 21371 }
 13630 recordtype(aai) {
 21372 device(ao, CONSTANT, devAoSoft, "Soft Channel")
       
 21373 device(ao, CONSTANT, devAoSoftRaw, "Raw Soft Channel")
       
 21374 device(ao, CONSTANT, devAoSoftCallback, "Async Soft Channel")
       
 21375 device(ao, INST_IO, asynAoInt32, "asynInt32")
       
 21376 device(ao, INST_IO, asynAoFloat64, "asynFloat64")
       
 21377 device(ao, INST_IO, devaoStream, "stream")
       
 21378 device(ao, INST_IO, devAoStrParm, "asyn ao stringParm")
       
 21379 device(ao, INST_IO, devAoEurotherm, "asyn ao Eurotherm")
       
 21380 device(ao, INST_IO, devAoMPC, "asyn MPC")
       
 21381 device(ao, BBGPIB_IO, devAoAX301, "PZT Bug")
       
 21382 device(ao, INST_IO, devAoTPG261, "asyn TPG261")
       
 21383 recordtype(stringin) {
 13631     %#include "epicsTypes.h"
 21384     %#include "epicsTypes.h"
 13632     %#include "link.h"
 21385     %#include "link.h"
 13633     %#include "epicsMutex.h"
 21386     %#include "epicsMutex.h"
 13634     %#include "ellLib.h"
 21387     %#include "ellLib.h"
 13635     %#include "epicsTime.h"
 21388     %#include "epicsTime.h"
 13636     %#include "callback.h"
 21389     %#include "callback.h"
 13637     field(NAME, DBF_STRING) {
 21390     field(NAME, DBF_STRING) {
 13638         prompt("Record Name")
 21391         prompt("Record Name")
 13639         special(SPC_NOMOD)
       
 13640         size(61)
 21392         size(61)
       
 21393         special(SPC_NOMOD)
 13641     }
 21394     }
 13642     field(DESC, DBF_STRING) {
 21395     field(DESC, DBF_STRING) {
 13643         promptgroup("10 - Common")
       
 13644         prompt("Descriptor")
 21396         prompt("Descriptor")
 13645         size(41)
 21397         size(41)
       
 21398         promptgroup("10 - Common")
 13646     }
 21399     }
 13647     field(ASG, DBF_STRING) {
 21400     field(ASG, DBF_STRING) {
       
 21401         promptgroup("10 - Common")
       
 21402         special(SPC_AS)
 13648         prompt("Access Security Group")
 21403         prompt("Access Security Group")
 13649         special(SPC_AS)
       
 13650         promptgroup("10 - Common")
       
 13651         size(29)
 21404         size(29)
 13652     }
 21405     }
 13653     field(SCAN, DBF_MENU) {
 21406     field(SCAN, DBF_MENU) {
       
 21407         prompt("Scan Mechanism")
       
 21408         promptgroup("20 - Scan")
       
 21409         special(SPC_SCAN)
 13654         menu(menuScan)
 21410         menu(menuScan)
 13655         prompt("Scan Mechanism")
 21411         interest(1)
 13656         promptgroup("20 - Scan")
       
 13657         interest(1)
       
 13658         special(SPC_SCAN)
       
 13659     }
 21412     }
 13660     field(PINI, DBF_MENU) {
 21413     field(PINI, DBF_MENU) {
 13661         promptgroup("20 - Scan")
 21414         interest(1)
 13662         interest(1)
 21415         menu(menuPini)
       
 21416         promptgroup("20 - Scan")
 13663         prompt("Process at iocInit")
 21417         prompt("Process at iocInit")
 13664         menu(menuPini)
       
 13665     }
 21418     }
 13666     field(PHAS, DBF_SHORT) {
 21419     field(PHAS, DBF_SHORT) {
 13667         prompt("Scan Phase")
 21420         prompt("Scan Phase")
 13668         interest(1)
 21421         promptgroup("20 - Scan")
 13669         promptgroup("20 - Scan")
 21422         interest(1)
 13670         special(SPC_SCAN)
 21423         special(SPC_SCAN)
 13671     }
 21424     }
 13672     field(EVNT, DBF_STRING) {
 21425     field(EVNT, DBF_STRING) {
       
 21426         promptgroup("20 - Scan")
       
 21427         special(SPC_SCAN)
       
 21428         interest(1)
 13673         prompt("Event Name")
 21429         prompt("Event Name")
 13674         promptgroup("20 - Scan")
       
 13675         interest(1)
       
 13676         special(SPC_SCAN)
       
 13677         size(40)
 21430         size(40)
 13678     }
 21431     }
 13679     field(TSE, DBF_SHORT) {
 21432     field(TSE, DBF_SHORT) {
 13680         interest(1)
 21433         interest(1)
 13681         promptgroup("20 - Scan")
 21434         promptgroup("20 - Scan")
 13682         prompt("Time Stamp Event")
 21435         prompt("Time Stamp Event")
 13683     }
 21436     }
 13684     field(TSEL, DBF_INLINK) {
 21437     field(TSEL, DBF_INLINK) {
 13685         interest(1)
 21438         promptgroup("20 - Scan")
 13686         promptgroup("20 - Scan")
 21439         interest(1)
 13687         prompt("Time Stamp Link")
 21440         prompt("Time Stamp Link")
 13688     }
 21441     }
 13689     field(DTYP, DBF_DEVICE) {
 21442     field(DTYP, DBF_DEVICE) {
 13690         interest(1)
 21443         promptgroup("10 - Common")
 13691         promptgroup("10 - Common")
 21444         interest(1)
 13692         prompt("Device Type")
 21445         prompt("Device Type")
 13693     }
 21446     }
 13694     field(DISV, DBF_SHORT) {
 21447     field(DISV, DBF_SHORT) {
 13695         initial("1")
       
 13696         promptgroup("20 - Scan")
 21448         promptgroup("20 - Scan")
 13697         prompt("Disable Value")
 21449         prompt("Disable Value")
       
 21450         initial("1")
 13698     }
 21451     }
 13699     field(DISA, DBF_SHORT) {
 21452     field(DISA, DBF_SHORT) {
 13700         prompt("Disable")
 21453         prompt("Disable")
 13701     }
 21454     }
 13702     field(SDIS, DBF_INLINK) {
 21455     field(SDIS, DBF_INLINK) {
 13703         prompt("Scanning Disable")
 21456         prompt("Scanning Disable")
 13704         interest(1)
 21457         promptgroup("20 - Scan")
 13705         promptgroup("20 - Scan")
 21458         interest(1)
 13706     }
 21459     }
 13707     field(MLOK, DBF_NOACCESS) {
 21460     field(MLOK, DBF_NOACCESS) {
 13708         extra("epicsMutexId        mlok")
 21461         extra("epicsMutexId        mlok")
 13709         interest(4)
       
 13710         special(SPC_NOMOD)
       
 13711         prompt("Monitor lock")
 21462         prompt("Monitor lock")
       
 21463         special(SPC_NOMOD)
       
 21464         interest(4)
 13712     }
 21465     }
 13713     field(MLIS, DBF_NOACCESS) {
 21466     field(MLIS, DBF_NOACCESS) {
 13714         special(SPC_NOMOD)
       
 13715         interest(4)
       
 13716         prompt("Monitor List")
 21467         prompt("Monitor List")
 13717         extra("ELLLIST             mlis")
 21468         extra("ELLLIST             mlis")
       
 21469         interest(4)
       
 21470         special(SPC_NOMOD)
 13718     }
 21471     }
 13719     field(BKLNK, DBF_NOACCESS) {
 21472     field(BKLNK, DBF_NOACCESS) {
 13720         interest(4)
       
 13721         special(SPC_NOMOD)
       
 13722         prompt("Backwards link tracking")
 21473         prompt("Backwards link tracking")
 13723         extra("ELLLIST             bklnk")
 21474         extra("ELLLIST             bklnk")
       
 21475         special(SPC_NOMOD)
       
 21476         interest(4)
 13724     }
 21477     }
 13725     field(DISP, DBF_UCHAR) {
 21478     field(DISP, DBF_UCHAR) {
 13726         prompt("Disable putField")
 21479         prompt("Disable putField")
 13727     }
 21480     }
 13728     field(PROC, DBF_UCHAR) {
 21481     field(PROC, DBF_UCHAR) {
       
 21482         interest(3)
       
 21483         pp(TRUE)
 13729         prompt("Force Processing")
 21484         prompt("Force Processing")
 13730         interest(3)
       
 13731         pp(TRUE)
       
 13732     }
 21485     }
 13733     field(STAT, DBF_MENU) {
 21486     field(STAT, DBF_MENU) {
       
 21487         prompt("Alarm Status")
 13734         initial("UDF")
 21488         initial("UDF")
       
 21489         special(SPC_NOMOD)
 13735         menu(menuAlarmStat)
 21490         menu(menuAlarmStat)
 13736         special(SPC_NOMOD)
       
 13737         prompt("Alarm Status")
       
 13738     }
 21491     }
 13739     field(SEVR, DBF_MENU) {
 21492     field(SEVR, DBF_MENU) {
 13740         menu(menuAlarmSevr)
       
 13741         prompt("Alarm Severity")
 21493         prompt("Alarm Severity")
 13742         special(SPC_NOMOD)
 21494         special(SPC_NOMOD)
       
 21495         menu(menuAlarmSevr)
 13743     }
 21496     }
 13744     field(NSTA, DBF_MENU) {
 21497     field(NSTA, DBF_MENU) {
 13745         special(SPC_NOMOD)
       
 13746         interest(2)
       
 13747         prompt("New Alarm Status")
 21498         prompt("New Alarm Status")
       
 21499         special(SPC_NOMOD)
       
 21500         interest(2)
 13748         menu(menuAlarmStat)
 21501         menu(menuAlarmStat)
 13749     }
 21502     }
 13750     field(NSEV, DBF_MENU) {
 21503     field(NSEV, DBF_MENU) {
 13751         special(SPC_NOMOD)
 21504         menu(menuAlarmSevr)
 13752         interest(2)
 21505         interest(2)
       
 21506         special(SPC_NOMOD)
 13753         prompt("New Alarm Severity")
 21507         prompt("New Alarm Severity")
 13754         menu(menuAlarmSevr)
       
 13755     }
 21508     }
 13756     field(ACKS, DBF_MENU) {
 21509     field(ACKS, DBF_MENU) {
 13757         prompt("Alarm Ack Severity")
 21510         prompt("Alarm Ack Severity")
 13758         interest(2)
 21511         menu(menuAlarmSevr)
 13759         special(SPC_NOMOD)
 21512         interest(2)
 13760         menu(menuAlarmSevr)
 21513         special(SPC_NOMOD)
 13761     }
 21514     }
 13762     field(ACKT, DBF_MENU) {
 21515     field(ACKT, DBF_MENU) {
       
 21516         special(SPC_NOMOD)
       
 21517         interest(2)
       
 21518         menu(menuYesNo)
       
 21519         promptgroup("70 - Alarm")
 13763         initial("YES")
 21520         initial("YES")
 13764         prompt("Alarm Ack Transient")
 21521         prompt("Alarm Ack Transient")
 13765         interest(2)
       
 13766         promptgroup("70 - Alarm")
       
 13767         special(SPC_NOMOD)
       
 13768         menu(menuYesNo)
       
 13769     }
 21522     }
 13770     field(DISS, DBF_MENU) {
 21523     field(DISS, DBF_MENU) {
 13771         menu(menuAlarmSevr)
       
 13772         prompt("Disable Alarm Sevrty")
 21524         prompt("Disable Alarm Sevrty")
 13773         promptgroup("70 - Alarm")
 21525         promptgroup("70 - Alarm")
 13774         interest(1)
 21526         interest(1)
       
 21527         menu(menuAlarmSevr)
 13775     }
 21528     }
 13776     field(LCNT, DBF_UCHAR) {
 21529     field(LCNT, DBF_UCHAR) {
 13777         interest(2)
       
 13778         special(SPC_NOMOD)
       
 13779         prompt("Lock Count")
 21530         prompt("Lock Count")
       
 21531         interest(2)
       
 21532         special(SPC_NOMOD)
 13780     }
 21533     }
 13781     field(PACT, DBF_UCHAR) {
 21534     field(PACT, DBF_UCHAR) {
 13782         special(SPC_NOMOD)
 21535         special(SPC_NOMOD)
 13783         interest(1)
 21536         interest(1)
 13784         prompt("Record active")
 21537         prompt("Record active")
 13785     }
 21538     }
 13786     field(PUTF, DBF_UCHAR) {
 21539     field(PUTF, DBF_UCHAR) {
       
 21540         special(SPC_NOMOD)
       
 21541         interest(1)
 13787         prompt("dbPutField process")
 21542         prompt("dbPutField process")
 13788         interest(1)
       
 13789         special(SPC_NOMOD)
       
 13790     }
 21543     }
 13791     field(RPRO, DBF_UCHAR) {
 21544     field(RPRO, DBF_UCHAR) {
 13792         interest(1)
       
 13793         special(SPC_NOMOD)
       
 13794         prompt("Reprocess ")
 21545         prompt("Reprocess ")
       
 21546         special(SPC_NOMOD)
       
 21547         interest(1)
 13795     }
 21548     }
 13796     field(ASP, DBF_NOACCESS) {
 21549     field(ASP, DBF_NOACCESS) {
 13797         special(SPC_NOMOD)
 21550         interest(4)
 13798         interest(4)
 21551         special(SPC_NOMOD)
       
 21552         extra("struct asgMember    *asp")
 13799         prompt("Access Security Pvt")
 21553         prompt("Access Security Pvt")
 13800         extra("struct asgMember    *asp")
       
 13801     }
 21554     }
 13802     field(PPN, DBF_NOACCESS) {
 21555     field(PPN, DBF_NOACCESS) {
 13803         extra("struct processNotify *ppn")
 21556         extra("struct processNotify *ppn")
 13804         prompt("pprocessNotify")
 21557         prompt("pprocessNotify")
 13805         special(SPC_NOMOD)
 21558         special(SPC_NOMOD)
 13806         interest(4)
 21559         interest(4)
 13807     }
 21560     }
 13808     field(PPNR, DBF_NOACCESS) {
 21561     field(PPNR, DBF_NOACCESS) {
 13809         special(SPC_NOMOD)
       
 13810         interest(4)
       
 13811         prompt("pprocessNotifyRecord")
 21562         prompt("pprocessNotifyRecord")
 13812         extra("struct processNotifyRecord *ppnr")
 21563         extra("struct processNotifyRecord *ppnr")
       
 21564         special(SPC_NOMOD)
       
 21565         interest(4)
 13813     }
 21566     }
 13814     field(SPVT, DBF_NOACCESS) {
 21567     field(SPVT, DBF_NOACCESS) {
 13815         extra("struct scan_element *spvt")
 21568         extra("struct scan_element *spvt")
 13816         prompt("Scan Private")
 21569         prompt("Scan Private")
 13817         interest(4)
 21570         special(SPC_NOMOD)
 13818         special(SPC_NOMOD)
 21571         interest(4)
 13819     }
 21572     }
 13820     field(RSET, DBF_NOACCESS) {
 21573     field(RSET, DBF_NOACCESS) {
       
 21574         prompt("Address of RSET")
 13821         extra("struct typed_rset   *rset")
 21575         extra("struct typed_rset   *rset")
 13822         interest(4)
 21576         special(SPC_NOMOD)
 13823         special(SPC_NOMOD)
 21577         interest(4)
 13824         prompt("Address of RSET")
       
 13825     }
 21578     }
 13826     field(DSET, DBF_NOACCESS) {
 21579     field(DSET, DBF_NOACCESS) {
 13827         extra("struct dset         *dset")
 21580         extra("struct dset         *dset")
 13828         interest(4)
       
 13829         special(SPC_NOMOD)
       
 13830         prompt("DSET address")
 21581         prompt("DSET address")
       
 21582         interest(4)
       
 21583         special(SPC_NOMOD)
 13831     }
 21584     }
 13832     field(DPVT, DBF_NOACCESS) {
 21585     field(DPVT, DBF_NOACCESS) {
       
 21586         special(SPC_NOMOD)
       
 21587         interest(4)
 13833         extra("void                *dpvt")
 21588         extra("void                *dpvt")
 13834         prompt("Device Private")
 21589         prompt("Device Private")
 13835         special(SPC_NOMOD)
       
 13836         interest(4)
       
 13837     }
 21590     }
 13838     field(RDES, DBF_NOACCESS) {
 21591     field(RDES, DBF_NOACCESS) {
       
 21592         prompt("Address of dbRecordType")
 13839         extra("struct dbRecordType *rdes")
 21593         extra("struct dbRecordType *rdes")
 13840         prompt("Address of dbRecordType")
 21594         special(SPC_NOMOD)
 13841         interest(4)
 21595         interest(4)
 13842         special(SPC_NOMOD)
       
 13843     }
 21596     }
 13844     field(LSET, DBF_NOACCESS) {
 21597     field(LSET, DBF_NOACCESS) {
 13845         prompt("Lock Set")
 21598         prompt("Lock Set")
 13846         special(SPC_NOMOD)
       
 13847         interest(4)
       
 13848         extra("struct lockRecord   *lset")
 21599         extra("struct lockRecord   *lset")
       
 21600         special(SPC_NOMOD)
       
 21601         interest(4)
 13849     }
 21602     }
 13850     field(PRIO, DBF_MENU) {
 21603     field(PRIO, DBF_MENU) {
       
 21604         special(SPC_SCAN)
       
 21605         interest(1)
 13851         menu(menuPriority)
 21606         menu(menuPriority)
 13852         special(SPC_SCAN)
       
 13853         interest(1)
       
 13854         promptgroup("20 - Scan")
 21607         promptgroup("20 - Scan")
 13855         prompt("Scheduling Priority")
 21608         prompt("Scheduling Priority")
 13856     }
 21609     }
 13857     field(TPRO, DBF_UCHAR) {
 21610     field(TPRO, DBF_UCHAR) {
 13858         prompt("Trace Processing")
 21611         prompt("Trace Processing")
 13859     }
 21612     }
 13860     field(BKPT, DBF_NOACCESS) {
 21613     field(BKPT, DBF_NOACCESS) {
       
 21614         interest(1)
       
 21615         special(SPC_NOMOD)
       
 21616         prompt("Break Point")
 13861         extra("char                bkpt")
 21617         extra("char                bkpt")
 13862         prompt("Break Point")
       
 13863         interest(1)
       
 13864         special(SPC_NOMOD)
       
 13865     }
 21618     }
 13866     field(UDF, DBF_UCHAR) {
 21619     field(UDF, DBF_UCHAR) {
 13867         interest(1)
       
 13868         promptgroup("10 - Common")
       
 13869         prompt("Undefined")
 21620         prompt("Undefined")
 13870         initial("1")
 21621         initial("1")
 13871         pp(TRUE)
 21622         pp(TRUE)
       
 21623         promptgroup("10 - Common")
       
 21624         interest(1)
 13872     }
 21625     }
 13873     field(UDFS, DBF_MENU) {
 21626     field(UDFS, DBF_MENU) {
       
 21627         menu(menuAlarmSevr)
       
 21628         interest(1)
       
 21629         promptgroup("70 - Alarm")
 13874         initial("INVALID")
 21630         initial("INVALID")
 13875         menu(menuAlarmSevr)
       
 13876         prompt("Undefined Alarm Sevrty")
 21631         prompt("Undefined Alarm Sevrty")
 13877         interest(1)
       
 13878         promptgroup("70 - Alarm")
       
 13879     }
 21632     }
 13880     field(TIME, DBF_NOACCESS) {
 21633     field(TIME, DBF_NOACCESS) {
 13881         interest(2)
 21634         extra("epicsTimeStamp      time")
 13882         special(SPC_NOMOD)
       
 13883         prompt("Time")
 21635         prompt("Time")
 13884         extra("epicsTimeStamp      time")
 21636         interest(2)
       
 21637         special(SPC_NOMOD)
 13885     }
 21638     }
 13886     field(FLNK, DBF_FWDLINK) {
 21639     field(FLNK, DBF_FWDLINK) {
       
 21640         interest(1)
       
 21641         promptgroup("20 - Scan")
 13887         prompt("Forward Process Link")
 21642         prompt("Forward Process Link")
 13888         promptgroup("20 - Scan")
 21643     }
 13889         interest(1)
 21644     field(VAL, DBF_STRING) {
 13890     }
 21645         size(40)
 13891     field(VAL, DBF_NOACCESS) {
       
 13892         special(SPC_DBADDR)
       
 13893         prompt("Value")
       
 13894         asl(ASL0)
 21646         asl(ASL0)
 13895         extra("void *		val")
 21647         prompt("Current Value")
 13896         pp(TRUE)
 21648         pp(TRUE)
 13897     }
 21649         promptgroup("40 - Input")
 13898     field(PREC, DBF_SHORT) {
 21650     }
 13899         prompt("Display Precision")
 21651     field(OVAL, DBF_STRING) {
 13900         prop(YES)
 21652         interest(3)
       
 21653         special(SPC_NOMOD)
       
 21654         size(40)
       
 21655         prompt("Previous Value")
       
 21656     }
       
 21657     field(INP, DBF_INLINK) {
       
 21658         interest(1)
       
 21659         promptgroup("40 - Input")
       
 21660         prompt("Input Specification")
       
 21661     }
       
 21662     field(MPST, DBF_MENU) {
 13901         promptgroup("80 - Display")
 21663         promptgroup("80 - Display")
 13902         interest(1)
 21664         menu(stringinPOST)
 13903     }
 21665         interest(1)
 13904     field(INP, DBF_INLINK) {
 21666         prompt("Post Value Monitors")
 13905         promptgroup("40 - Input")
 21667     }
 13906         interest(1)
 21668     field(APST, DBF_MENU) {
 13907         prompt("Input Specification")
 21669         prompt("Post Archive Monitors")
 13908     }
 21670         menu(stringinPOST)
 13909     field(EGU, DBF_STRING) {
       
 13910         prompt("Engineering Units")
       
 13911         prop(YES)
       
 13912         interest(1)
 21671         interest(1)
 13913         promptgroup("80 - Display")
 21672         promptgroup("80 - Display")
 13914         size(16)
       
 13915     }
       
 13916     field(HOPR, DBF_DOUBLE) {
       
 13917         interest(1)
       
 13918         prop(YES)
       
 13919         promptgroup("80 - Display")
       
 13920         prompt("High Operating Range")
       
 13921     }
       
 13922     field(LOPR, DBF_DOUBLE) {
       
 13923         prop(YES)
       
 13924         interest(1)
       
 13925         promptgroup("80 - Display")
       
 13926         prompt("Low Operating Range")
       
 13927     }
       
 13928     field(NELM, DBF_ULONG) {
       
 13929         initial("1")
       
 13930         prompt("Number of Elements")
       
 13931         special(SPC_NOMOD)
       
 13932         interest(1)
       
 13933         promptgroup("30 - Action")
       
 13934     }
       
 13935     field(FTVL, DBF_MENU) {
       
 13936         special(SPC_NOMOD)
       
 13937         interest(1)
       
 13938         promptgroup("30 - Action")
       
 13939         prompt("Field Type of Value")
       
 13940         menu(menuFtype)
       
 13941     }
       
 13942     field(NORD, DBF_ULONG) {
       
 13943         prompt("Number elements read")
       
 13944         special(SPC_NOMOD)
       
 13945     }
       
 13946     field(BPTR, DBF_NOACCESS) {
       
 13947         special(SPC_NOMOD)
       
 13948         interest(4)
       
 13949         prompt("Buffer Pointer")
       
 13950         extra("void *		bptr")
       
 13951     }
       
 13952     field(SIML, DBF_INLINK) {
       
 13953         prompt("Simulation Mode Link")
       
 13954         promptgroup("90 - Simulate")
       
 13955         interest(1)
       
 13956     }
       
 13957     field(SIMM, DBF_MENU) {
       
 13958         prompt("Simulation Mode")
       
 13959         interest(1)
       
 13960         special(SPC_MOD)
       
 13961         menu(menuYesNo)
       
 13962     }
       
 13963     field(SIMS, DBF_MENU) {
       
 13964         prompt("Simulation Mode Severity")
       
 13965         promptgroup("90 - Simulate")
       
 13966         interest(2)
       
 13967         menu(menuAlarmSevr)
       
 13968     }
 21673     }
 13969     field(SIOL, DBF_INLINK) {
 21674     field(SIOL, DBF_INLINK) {
 13970         prompt("Simulation Input Link")
 21675         prompt("Simulation Input Link")
 13971         promptgroup("90 - Simulate")
 21676         promptgroup("90 - Simulate")
 13972         interest(1)
 21677         interest(1)
 13973     }
 21678     }
       
 21679     field(SVAL, DBF_STRING) {
       
 21680         prompt("Simulation Value")
       
 21681         size(40)
       
 21682         pp(TRUE)
       
 21683     }
       
 21684     field(SIML, DBF_INLINK) {
       
 21685         promptgroup("90 - Simulate")
       
 21686         interest(1)
       
 21687         prompt("Simulation Mode Link")
       
 21688     }
       
 21689     field(SIMM, DBF_MENU) {
       
 21690         prompt("Simulation Mode")
       
 21691         special(SPC_MOD)
       
 21692         interest(1)
       
 21693         menu(menuYesNo)
       
 21694     }
       
 21695     field(SIMS, DBF_MENU) {
       
 21696         interest(2)
       
 21697         menu(menuAlarmSevr)
       
 21698         promptgroup("90 - Simulate")
       
 21699         prompt("Simulation Mode Severity")
       
 21700     }
 13974     field(OLDSIMM, DBF_MENU) {
 21701     field(OLDSIMM, DBF_MENU) {
       
 21702         menu(menuSimm)
 13975         interest(4)
 21703         interest(4)
 13976         special(SPC_NOMOD)
 21704         special(SPC_NOMOD)
 13977         prompt("Prev. Simulation Mode")
 21705         prompt("Prev. Simulation Mode")
 13978         menu(menuSimm)
       
 13979     }
 21706     }
 13980     field(SSCN, DBF_MENU) {
 21707     field(SSCN, DBF_MENU) {
       
 21708         prompt("Sim. Mode Scan")
       
 21709         initial("65535")
       
 21710         promptgroup("90 - Simulate")
       
 21711         interest(1)
 13981         menu(menuScan)
 21712         menu(menuScan)
 13982         prompt("Sim. Mode Scan")
       
 13983         interest(1)
       
 13984         promptgroup("90 - Simulate")
       
 13985         initial("65535")
       
 13986     }
 21713     }
 13987     field(SDLY, DBF_DOUBLE) {
 21714     field(SDLY, DBF_DOUBLE) {
 13988         initial("-1.0")
 21715         initial("-1.0")
       
 21716         prompt("Sim. Mode Async Delay")
 13989         interest(2)
 21717         interest(2)
 13990         promptgroup("90 - Simulate")
 21718         promptgroup("90 - Simulate")
 13991         prompt("Sim. Mode Async Delay")
       
 13992     }
       
 13993     field(SIMPVT, DBF_NOACCESS) {
       
 13994         prompt("Sim. Mode Private")
       
 13995         special(SPC_NOMOD)
       
 13996         interest(4)
       
 13997         extra("CALLBACK            *simpvt")
       
 13998     }
       
 13999     field(MPST, DBF_MENU) {
       
 14000         prompt("Post Value Monitors")
       
 14001         interest(1)
       
 14002         promptgroup("80 - Display")
       
 14003         menu(aaiPOST)
       
 14004     }
       
 14005     field(APST, DBF_MENU) {
       
 14006         promptgroup("80 - Display")
       
 14007         interest(1)
       
 14008         prompt("Post Archive Monitors")
       
 14009         menu(aaiPOST)
       
 14010     }
       
 14011     field(HASH, DBF_ULONG) {
       
 14012         prompt("Hash of OnChange data.")
       
 14013         interest(3)
       
 14014     }
       
 14015 }
       
 14016 device(aai, CONSTANT, devAaiSoft, "Soft Channel")
       
 14017 device(aai, INST_IO, devaaiStream, "stream")
       
 14018 recordtype(mbbo) {
       
 14019     %#include "epicsTypes.h"
       
 14020     %#include "link.h"
       
 14021     %#include "epicsMutex.h"
       
 14022     %#include "ellLib.h"
       
 14023     %#include "epicsTime.h"
       
 14024     %#include "callback.h"
       
 14025     field(NAME, DBF_STRING) {
       
 14026         size(61)
       
 14027         special(SPC_NOMOD)
       
 14028         prompt("Record Name")
       
 14029     }
       
 14030     field(DESC, DBF_STRING) {
       
 14031         size(41)
       
 14032         prompt("Descriptor")
       
 14033         promptgroup("10 - Common")
       
 14034     }
       
 14035     field(ASG, DBF_STRING) {
       
 14036         special(SPC_AS)
       
 14037         promptgroup("10 - Common")
       
 14038         prompt("Access Security Group")
       
 14039         size(29)
       
 14040     }
       
 14041     field(SCAN, DBF_MENU) {
       
 14042         menu(menuScan)
       
 14043         prompt("Scan Mechanism")
       
 14044         promptgroup("20 - Scan")
       
 14045         interest(1)
       
 14046         special(SPC_SCAN)
       
 14047     }
       
 14048     field(PINI, DBF_MENU) {
       
 14049         promptgroup("20 - Scan")
       
 14050         interest(1)
       
 14051         prompt("Process at iocInit")
       
 14052         menu(menuPini)
       
 14053     }
       
 14054     field(PHAS, DBF_SHORT) {
       
 14055         interest(1)
       
 14056         special(SPC_SCAN)
       
 14057         promptgroup("20 - Scan")
       
 14058         prompt("Scan Phase")
       
 14059     }
       
 14060     field(EVNT, DBF_STRING) {
       
 14061         promptgroup("20 - Scan")
       
 14062         interest(1)
       
 14063         special(SPC_SCAN)
       
 14064         prompt("Event Name")
       
 14065         size(40)
       
 14066     }
       
 14067     field(TSE, DBF_SHORT) {
       
 14068         prompt("Time Stamp Event")
       
 14069         promptgroup("20 - Scan")
       
 14070         interest(1)
       
 14071     }
       
 14072     field(TSEL, DBF_INLINK) {
       
 14073         interest(1)
       
 14074         promptgroup("20 - Scan")
       
 14075         prompt("Time Stamp Link")
       
 14076     }
       
 14077     field(DTYP, DBF_DEVICE) {
       
 14078         prompt("Device Type")
       
 14079         promptgroup("10 - Common")
       
 14080         interest(1)
       
 14081     }
       
 14082     field(DISV, DBF_SHORT) {
       
 14083         initial("1")
       
 14084         promptgroup("20 - Scan")
       
 14085         prompt("Disable Value")
       
 14086     }
       
 14087     field(DISA, DBF_SHORT) {
       
 14088         prompt("Disable")
       
 14089     }
       
 14090     field(SDIS, DBF_INLINK) {
       
 14091         prompt("Scanning Disable")
       
 14092         interest(1)
       
 14093         promptgroup("20 - Scan")
       
 14094     }
       
 14095     field(MLOK, DBF_NOACCESS) {
       
 14096         interest(4)
       
 14097         special(SPC_NOMOD)
       
 14098         prompt("Monitor lock")
       
 14099         extra("epicsMutexId        mlok")
       
 14100     }
       
 14101     field(MLIS, DBF_NOACCESS) {
       
 14102         extra("ELLLIST             mlis")
       
 14103         prompt("Monitor List")
       
 14104         interest(4)
       
 14105         special(SPC_NOMOD)
       
 14106     }
       
 14107     field(BKLNK, DBF_NOACCESS) {
       
 14108         special(SPC_NOMOD)
       
 14109         interest(4)
       
 14110         prompt("Backwards link tracking")
       
 14111         extra("ELLLIST             bklnk")
       
 14112     }
       
 14113     field(DISP, DBF_UCHAR) {
       
 14114         prompt("Disable putField")
       
 14115     }
       
 14116     field(PROC, DBF_UCHAR) {
       
 14117         interest(3)
       
 14118         prompt("Force Processing")
       
 14119         pp(TRUE)
       
 14120     }
       
 14121     field(STAT, DBF_MENU) {
       
 14122         initial("UDF")
       
 14123         menu(menuAlarmStat)
       
 14124         prompt("Alarm Status")
       
 14125         special(SPC_NOMOD)
       
 14126     }
       
 14127     field(SEVR, DBF_MENU) {
       
 14128         prompt("Alarm Severity")
       
 14129         special(SPC_NOMOD)
       
 14130         menu(menuAlarmSevr)
       
 14131     }
       
 14132     field(NSTA, DBF_MENU) {
       
 14133         menu(menuAlarmStat)
       
 14134         interest(2)
       
 14135         special(SPC_NOMOD)
       
 14136         prompt("New Alarm Status")
       
 14137     }
       
 14138     field(NSEV, DBF_MENU) {
       
 14139         special(SPC_NOMOD)
       
 14140         interest(2)
       
 14141         prompt("New Alarm Severity")
       
 14142         menu(menuAlarmSevr)
       
 14143     }
       
 14144     field(ACKS, DBF_MENU) {
       
 14145         interest(2)
       
 14146         special(SPC_NOMOD)
       
 14147         prompt("Alarm Ack Severity")
       
 14148         menu(menuAlarmSevr)
       
 14149     }
       
 14150     field(ACKT, DBF_MENU) {
       
 14151         prompt("Alarm Ack Transient")
       
 14152         interest(2)
       
 14153         special(SPC_NOMOD)
       
 14154         promptgroup("70 - Alarm")
       
 14155         menu(menuYesNo)
       
 14156         initial("YES")
       
 14157     }
       
 14158     field(DISS, DBF_MENU) {
       
 14159         prompt("Disable Alarm Sevrty")
       
 14160         promptgroup("70 - Alarm")
       
 14161         interest(1)
       
 14162         menu(menuAlarmSevr)
       
 14163     }
       
 14164     field(LCNT, DBF_UCHAR) {
       
 14165         interest(2)
       
 14166         special(SPC_NOMOD)
       
 14167         prompt("Lock Count")
       
 14168     }
       
 14169     field(PACT, DBF_UCHAR) {
       
 14170         interest(1)
       
 14171         special(SPC_NOMOD)
       
 14172         prompt("Record active")
       
 14173     }
       
 14174     field(PUTF, DBF_UCHAR) {
       
 14175         special(SPC_NOMOD)
       
 14176         interest(1)
       
 14177         prompt("dbPutField process")
       
 14178     }
       
 14179     field(RPRO, DBF_UCHAR) {
       
 14180         prompt("Reprocess ")
       
 14181         interest(1)
       
 14182         special(SPC_NOMOD)
       
 14183     }
       
 14184     field(ASP, DBF_NOACCESS) {
       
 14185         extra("struct asgMember    *asp")
       
 14186         interest(4)
       
 14187         special(SPC_NOMOD)
       
 14188         prompt("Access Security Pvt")
       
 14189     }
       
 14190     field(PPN, DBF_NOACCESS) {
       
 14191         extra("struct processNotify *ppn")
       
 14192         prompt("pprocessNotify")
       
 14193         special(SPC_NOMOD)
       
 14194         interest(4)
       
 14195     }
       
 14196     field(PPNR, DBF_NOACCESS) {
       
 14197         interest(4)
       
 14198         special(SPC_NOMOD)
       
 14199         prompt("pprocessNotifyRecord")
       
 14200         extra("struct processNotifyRecord *ppnr")
       
 14201     }
       
 14202     field(SPVT, DBF_NOACCESS) {
       
 14203         extra("struct scan_element *spvt")
       
 14204         prompt("Scan Private")
       
 14205         interest(4)
       
 14206         special(SPC_NOMOD)
       
 14207     }
       
 14208     field(RSET, DBF_NOACCESS) {
       
 14209         prompt("Address of RSET")
       
 14210         interest(4)
       
 14211         special(SPC_NOMOD)
       
 14212         extra("struct typed_rset   *rset")
       
 14213     }
       
 14214     field(DSET, DBF_NOACCESS) {
       
 14215         prompt("DSET address")
       
 14216         interest(4)
       
 14217         special(SPC_NOMOD)
       
 14218         extra("struct dset         *dset")
       
 14219     }
       
 14220     field(DPVT, DBF_NOACCESS) {
       
 14221         extra("void                *dpvt")
       
 14222         special(SPC_NOMOD)
       
 14223         interest(4)
       
 14224         prompt("Device Private")
       
 14225     }
       
 14226     field(RDES, DBF_NOACCESS) {
       
 14227         prompt("Address of dbRecordType")
       
 14228         special(SPC_NOMOD)
       
 14229         interest(4)
       
 14230         extra("struct dbRecordType *rdes")
       
 14231     }
       
 14232     field(LSET, DBF_NOACCESS) {
       
 14233         extra("struct lockRecord   *lset")
       
 14234         prompt("Lock Set")
       
 14235         interest(4)
       
 14236         special(SPC_NOMOD)
       
 14237     }
       
 14238     field(PRIO, DBF_MENU) {
       
 14239         menu(menuPriority)
       
 14240         promptgroup("20 - Scan")
       
 14241         interest(1)
       
 14242         special(SPC_SCAN)
       
 14243         prompt("Scheduling Priority")
       
 14244     }
       
 14245     field(TPRO, DBF_UCHAR) {
       
 14246         prompt("Trace Processing")
       
 14247     }
       
 14248     field(BKPT, DBF_NOACCESS) {
       
 14249         prompt("Break Point")
       
 14250         special(SPC_NOMOD)
       
 14251         interest(1)
       
 14252         extra("char                bkpt")
       
 14253     }
       
 14254     field(UDF, DBF_UCHAR) {
       
 14255         interest(1)
       
 14256         promptgroup("10 - Common")
       
 14257         prompt("Undefined")
       
 14258         initial("1")
       
 14259         pp(TRUE)
       
 14260     }
       
 14261     field(UDFS, DBF_MENU) {
       
 14262         initial("INVALID")
       
 14263         interest(1)
       
 14264         promptgroup("70 - Alarm")
       
 14265         prompt("Undefined Alarm Sevrty")
       
 14266         menu(menuAlarmSevr)
       
 14267     }
       
 14268     field(TIME, DBF_NOACCESS) {
       
 14269         special(SPC_NOMOD)
       
 14270         interest(2)
       
 14271         prompt("Time")
       
 14272         extra("epicsTimeStamp      time")
       
 14273     }
       
 14274     field(FLNK, DBF_FWDLINK) {
       
 14275         prompt("Forward Process Link")
       
 14276         interest(1)
       
 14277         promptgroup("20 - Scan")
       
 14278     }
       
 14279     field(VAL, DBF_ENUM) {
       
 14280         pp(TRUE)
       
 14281         promptgroup("50 - Output")
       
 14282         special(SPC_DBADDR)
       
 14283         prompt("Desired Value")
       
 14284         asl(ASL0)
       
 14285     }
       
 14286     field(DOL, DBF_INLINK) {
       
 14287         interest(1)
       
 14288         promptgroup("40 - Input")
       
 14289         prompt("Desired Output Loc")
       
 14290     }
       
 14291     field(OMSL, DBF_MENU) {
       
 14292         menu(menuOmsl)
       
 14293         promptgroup("50 - Output")
       
 14294         interest(1)
       
 14295         prompt("Output Mode Select")
       
 14296     }
       
 14297     field(NOBT, DBF_USHORT) {
       
 14298         special(SPC_NOMOD)
       
 14299         interest(1)
       
 14300         promptgroup("50 - Output")
       
 14301         prompt("Number of Bits")
       
 14302     }
       
 14303     field(OUT, DBF_OUTLINK) {
       
 14304         prompt("Output Specification")
       
 14305         interest(1)
       
 14306         promptgroup("50 - Output")
       
 14307     }
       
 14308     field(ZRVL, DBF_ULONG) {
       
 14309         prompt("Zero Value")
       
 14310         promptgroup("51 - Output 0-7")
       
 14311         interest(1)
       
 14312         special(SPC_MOD)
       
 14313         pp(TRUE)
       
 14314         base(HEX)
       
 14315     }
       
 14316     field(ONVL, DBF_ULONG) {
       
 14317         prompt("One Value")
       
 14318         interest(1)
       
 14319         special(SPC_MOD)
       
 14320         promptgroup("51 - Output 0-7")
       
 14321         base(HEX)
       
 14322         pp(TRUE)
       
 14323     }
       
 14324     field(TWVL, DBF_ULONG) {
       
 14325         prompt("Two Value")
       
 14326         interest(1)
       
 14327         promptgroup("51 - Output 0-7")
       
 14328         special(SPC_MOD)
       
 14329         pp(TRUE)
       
 14330         base(HEX)
       
 14331     }
       
 14332     field(THVL, DBF_ULONG) {
       
 14333         base(HEX)
       
 14334         pp(TRUE)
       
 14335         prompt("Three Value")
       
 14336         interest(1)
       
 14337         promptgroup("51 - Output 0-7")
       
 14338         special(SPC_MOD)
       
 14339     }
       
 14340     field(FRVL, DBF_ULONG) {
       
 14341         pp(TRUE)
       
 14342         base(HEX)
       
 14343         prompt("Four Value")
       
 14344         promptgroup("51 - Output 0-7")
       
 14345         interest(1)
       
 14346         special(SPC_MOD)
       
 14347     }
       
 14348     field(FVVL, DBF_ULONG) {
       
 14349         interest(1)
       
 14350         promptgroup("51 - Output 0-7")
       
 14351         special(SPC_MOD)
       
 14352         prompt("Five Value")
       
 14353         pp(TRUE)
       
 14354         base(HEX)
       
 14355     }
       
 14356     field(SXVL, DBF_ULONG) {
       
 14357         promptgroup("51 - Output 0-7")
       
 14358         interest(1)
       
 14359         special(SPC_MOD)
       
 14360         prompt("Six Value")
       
 14361         pp(TRUE)
       
 14362         base(HEX)
       
 14363     }
       
 14364     field(SVVL, DBF_ULONG) {
       
 14365         base(HEX)
       
 14366         pp(TRUE)
       
 14367         prompt("Seven Value")
       
 14368         interest(1)
       
 14369         special(SPC_MOD)
       
 14370         promptgroup("51 - Output 0-7")
       
 14371     }
       
 14372     field(EIVL, DBF_ULONG) {
       
 14373         prompt("Eight Value")
       
 14374         promptgroup("52 - Output 8-15")
       
 14375         interest(1)
       
 14376         special(SPC_MOD)
       
 14377         base(HEX)
       
 14378         pp(TRUE)
       
 14379     }
       
 14380     field(NIVL, DBF_ULONG) {
       
 14381         pp(TRUE)
       
 14382         base(HEX)
       
 14383         interest(1)
       
 14384         special(SPC_MOD)
       
 14385         promptgroup("52 - Output 8-15")
       
 14386         prompt("Nine Value")
       
 14387     }
       
 14388     field(TEVL, DBF_ULONG) {
       
 14389         base(HEX)
       
 14390         pp(TRUE)
       
 14391         prompt("Ten Value")
       
 14392         interest(1)
       
 14393         promptgroup("52 - Output 8-15")
       
 14394         special(SPC_MOD)
       
 14395     }
       
 14396     field(ELVL, DBF_ULONG) {
       
 14397         pp(TRUE)
       
 14398         base(HEX)
       
 14399         prompt("Eleven Value")
       
 14400         interest(1)
       
 14401         promptgroup("52 - Output 8-15")
       
 14402         special(SPC_MOD)
       
 14403     }
       
 14404     field(TVVL, DBF_ULONG) {
       
 14405         prompt("Twelve Value")
       
 14406         special(SPC_MOD)
       
 14407         interest(1)
       
 14408         promptgroup("52 - Output 8-15")
       
 14409         pp(TRUE)
       
 14410         base(HEX)
       
 14411     }
       
 14412     field(TTVL, DBF_ULONG) {
       
 14413         prompt("Thirteen Value")
       
 14414         interest(1)
       
 14415         promptgroup("52 - Output 8-15")
       
 14416         special(SPC_MOD)
       
 14417         pp(TRUE)
       
 14418         base(HEX)
       
 14419     }
       
 14420     field(FTVL, DBF_ULONG) {
       
 14421         base(HEX)
       
 14422         pp(TRUE)
       
 14423         prompt("Fourteen Value")
       
 14424         interest(1)
       
 14425         promptgroup("52 - Output 8-15")
       
 14426         special(SPC_MOD)
       
 14427     }
       
 14428     field(FFVL, DBF_ULONG) {
       
 14429         pp(TRUE)
       
 14430         base(HEX)
       
 14431         interest(1)
       
 14432         promptgroup("52 - Output 8-15")
       
 14433         special(SPC_MOD)
       
 14434         prompt("Fifteen Value")
       
 14435     }
       
 14436     field(ZRST, DBF_STRING) {
       
 14437         special(SPC_MOD)
       
 14438         interest(1)
       
 14439         promptgroup("81 - Display 0-7")
       
 14440         prompt("Zero String")
       
 14441         pp(TRUE)
       
 14442         size(26)
       
 14443     }
       
 14444     field(ONST, DBF_STRING) {
       
 14445         prompt("One String")
       
 14446         interest(1)
       
 14447         promptgroup("81 - Display 0-7")
       
 14448         special(SPC_MOD)
       
 14449         size(26)
       
 14450         pp(TRUE)
       
 14451     }
       
 14452     field(TWST, DBF_STRING) {
       
 14453         size(26)
       
 14454         pp(TRUE)
       
 14455         promptgroup("81 - Display 0-7")
       
 14456         interest(1)
       
 14457         special(SPC_MOD)
       
 14458         prompt("Two String")
       
 14459     }
       
 14460     field(THST, DBF_STRING) {
       
 14461         pp(TRUE)
       
 14462         size(26)
       
 14463         interest(1)
       
 14464         promptgroup("81 - Display 0-7")
       
 14465         special(SPC_MOD)
       
 14466         prompt("Three String")
       
 14467     }
       
 14468     field(FRST, DBF_STRING) {
       
 14469         interest(1)
       
 14470         promptgroup("81 - Display 0-7")
       
 14471         special(SPC_MOD)
       
 14472         prompt("Four String")
       
 14473         pp(TRUE)
       
 14474         size(26)
       
 14475     }
       
 14476     field(FVST, DBF_STRING) {
       
 14477         pp(TRUE)
       
 14478         size(26)
       
 14479         prompt("Five String")
       
 14480         interest(1)
       
 14481         promptgroup("81 - Display 0-7")
       
 14482         special(SPC_MOD)
       
 14483     }
       
 14484     field(SXST, DBF_STRING) {
       
 14485         interest(1)
       
 14486         promptgroup("81 - Display 0-7")
       
 14487         special(SPC_MOD)
       
 14488         prompt("Six String")
       
 14489         size(26)
       
 14490         pp(TRUE)
       
 14491     }
       
 14492     field(SVST, DBF_STRING) {
       
 14493         special(SPC_MOD)
       
 14494         interest(1)
       
 14495         promptgroup("81 - Display 0-7")
       
 14496         prompt("Seven String")
       
 14497         pp(TRUE)
       
 14498         size(26)
       
 14499     }
       
 14500     field(EIST, DBF_STRING) {
       
 14501         prompt("Eight String")
       
 14502         interest(1)
       
 14503         promptgroup("82 - Display 8-15")
       
 14504         special(SPC_MOD)
       
 14505         size(26)
       
 14506         pp(TRUE)
       
 14507     }
       
 14508     field(NIST, DBF_STRING) {
       
 14509         pp(TRUE)
       
 14510         size(26)
       
 14511         promptgroup("82 - Display 8-15")
       
 14512         interest(1)
       
 14513         special(SPC_MOD)
       
 14514         prompt("Nine String")
       
 14515     }
       
 14516     field(TEST, DBF_STRING) {
       
 14517         size(26)
       
 14518         pp(TRUE)
       
 14519         interest(1)
       
 14520         special(SPC_MOD)
       
 14521         promptgroup("82 - Display 8-15")
       
 14522         prompt("Ten String")
       
 14523     }
       
 14524     field(ELST, DBF_STRING) {
       
 14525         pp(TRUE)
       
 14526         size(26)
       
 14527         special(SPC_MOD)
       
 14528         interest(1)
       
 14529         promptgroup("82 - Display 8-15")
       
 14530         prompt("Eleven String")
       
 14531     }
       
 14532     field(TVST, DBF_STRING) {
       
 14533         interest(1)
       
 14534         promptgroup("82 - Display 8-15")
       
 14535         special(SPC_MOD)
       
 14536         prompt("Twelve String")
       
 14537         pp(TRUE)
       
 14538         size(26)
       
 14539     }
       
 14540     field(TTST, DBF_STRING) {
       
 14541         prompt("Thirteen String")
       
 14542         special(SPC_MOD)
       
 14543         interest(1)
       
 14544         promptgroup("82 - Display 8-15")
       
 14545         size(26)
       
 14546         pp(TRUE)
       
 14547     }
       
 14548     field(FTST, DBF_STRING) {
       
 14549         pp(TRUE)
       
 14550         size(26)
       
 14551         interest(1)
       
 14552         promptgroup("82 - Display 8-15")
       
 14553         special(SPC_MOD)
       
 14554         prompt("Fourteen String")
       
 14555     }
       
 14556     field(FFST, DBF_STRING) {
       
 14557         prompt("Fifteen String")
       
 14558         special(SPC_MOD)
       
 14559         interest(1)
       
 14560         promptgroup("82 - Display 8-15")
       
 14561         size(26)
       
 14562         pp(TRUE)
       
 14563     }
       
 14564     field(ZRSV, DBF_MENU) {
       
 14565         pp(TRUE)
       
 14566         interest(1)
       
 14567         promptgroup("71 - Alarm 0-7")
       
 14568         prompt("State Zero Severity")
       
 14569         menu(menuAlarmSevr)
       
 14570     }
       
 14571     field(ONSV, DBF_MENU) {
       
 14572         pp(TRUE)
       
 14573         menu(menuAlarmSevr)
       
 14574         promptgroup("71 - Alarm 0-7")
       
 14575         interest(1)
       
 14576         prompt("State One Severity")
       
 14577     }
       
 14578     field(TWSV, DBF_MENU) {
       
 14579         pp(TRUE)
       
 14580         menu(menuAlarmSevr)
       
 14581         prompt("State Two Severity")
       
 14582         promptgroup("71 - Alarm 0-7")
       
 14583         interest(1)
       
 14584     }
       
 14585     field(THSV, DBF_MENU) {
       
 14586         prompt("State Three Severity")
       
 14587         interest(1)
       
 14588         promptgroup("71 - Alarm 0-7")
       
 14589         menu(menuAlarmSevr)
       
 14590         pp(TRUE)
       
 14591     }
       
 14592     field(FRSV, DBF_MENU) {
       
 14593         pp(TRUE)
       
 14594         menu(menuAlarmSevr)
       
 14595         promptgroup("71 - Alarm 0-7")
       
 14596         interest(1)
       
 14597         prompt("State Four Severity")
       
 14598     }
       
 14599     field(FVSV, DBF_MENU) {
       
 14600         pp(TRUE)
       
 14601         prompt("State Five Severity")
       
 14602         interest(1)
       
 14603         promptgroup("71 - Alarm 0-7")
       
 14604         menu(menuAlarmSevr)
       
 14605     }
       
 14606     field(SXSV, DBF_MENU) {
       
 14607         pp(TRUE)
       
 14608         promptgroup("71 - Alarm 0-7")
       
 14609         interest(1)
       
 14610         prompt("State Six Severity")
       
 14611         menu(menuAlarmSevr)
       
 14612     }
       
 14613     field(SVSV, DBF_MENU) {
       
 14614         pp(TRUE)
       
 14615         menu(menuAlarmSevr)
       
 14616         interest(1)
       
 14617         promptgroup("71 - Alarm 0-7")
       
 14618         prompt("State Seven Severity")
       
 14619     }
       
 14620     field(EISV, DBF_MENU) {
       
 14621         promptgroup("72 - Alarm 8-15")
       
 14622         interest(1)
       
 14623         prompt("State Eight Severity")
       
 14624         menu(menuAlarmSevr)
       
 14625         pp(TRUE)
       
 14626     }
       
 14627     field(NISV, DBF_MENU) {
       
 14628         interest(1)
       
 14629         promptgroup("72 - Alarm 8-15")
       
 14630         prompt("State Nine Severity")
       
 14631         menu(menuAlarmSevr)
       
 14632         pp(TRUE)
       
 14633     }
       
 14634     field(TESV, DBF_MENU) {
       
 14635         prompt("State Ten Severity")
       
 14636         promptgroup("72 - Alarm 8-15")
       
 14637         interest(1)
       
 14638         menu(menuAlarmSevr)
       
 14639         pp(TRUE)
       
 14640     }
       
 14641     field(ELSV, DBF_MENU) {
       
 14642         pp(TRUE)
       
 14643         interest(1)
       
 14644         promptgroup("72 - Alarm 8-15")
       
 14645         prompt("State Eleven Severity")
       
 14646         menu(menuAlarmSevr)
       
 14647     }
       
 14648     field(TVSV, DBF_MENU) {
       
 14649         prompt("State Twelve Severity")
       
 14650         promptgroup("72 - Alarm 8-15")
       
 14651         interest(1)
       
 14652         menu(menuAlarmSevr)
       
 14653         pp(TRUE)
       
 14654     }
       
 14655     field(TTSV, DBF_MENU) {
       
 14656         pp(TRUE)
       
 14657         interest(1)
       
 14658         promptgroup("72 - Alarm 8-15")
       
 14659         prompt("State Thirteen Sevr")
       
 14660         menu(menuAlarmSevr)
       
 14661     }
       
 14662     field(FTSV, DBF_MENU) {
       
 14663         prompt("State Fourteen Sevr")
       
 14664         promptgroup("72 - Alarm 8-15")
       
 14665         interest(1)
       
 14666         menu(menuAlarmSevr)
       
 14667         pp(TRUE)
       
 14668     }
       
 14669     field(FFSV, DBF_MENU) {
       
 14670         prompt("State Fifteen Sevr")
       
 14671         promptgroup("72 - Alarm 8-15")
       
 14672         interest(1)
       
 14673         menu(menuAlarmSevr)
       
 14674         pp(TRUE)
       
 14675     }
       
 14676     field(UNSV, DBF_MENU) {
       
 14677         promptgroup("70 - Alarm")
       
 14678         interest(1)
       
 14679         prompt("Unknown State Sevr")
       
 14680         menu(menuAlarmSevr)
       
 14681         pp(TRUE)
       
 14682     }
       
 14683     field(COSV, DBF_MENU) {
       
 14684         pp(TRUE)
       
 14685         menu(menuAlarmSevr)
       
 14686         interest(1)
       
 14687         promptgroup("70 - Alarm")
       
 14688         prompt("Change of State Sevr")
       
 14689     }
       
 14690     field(RVAL, DBF_ULONG) {
       
 14691         pp(TRUE)
       
 14692         prompt("Raw Value")
       
 14693     }
       
 14694     field(ORAW, DBF_ULONG) {
       
 14695         interest(3)
       
 14696         special(SPC_NOMOD)
       
 14697         prompt("Prev Raw Value")
       
 14698     }
       
 14699     field(RBV, DBF_ULONG) {
       
 14700         special(SPC_NOMOD)
       
 14701         prompt("Readback Value")
       
 14702     }
       
 14703     field(ORBV, DBF_ULONG) {
       
 14704         prompt("Prev Readback Value")
       
 14705         special(SPC_NOMOD)
       
 14706         interest(3)
       
 14707     }
       
 14708     field(MASK, DBF_ULONG) {
       
 14709         prompt("Hardware Mask")
       
 14710         special(SPC_NOMOD)
       
 14711         interest(1)
       
 14712     }
       
 14713     field(MLST, DBF_USHORT) {
       
 14714         prompt("Last Value Monitored")
       
 14715         special(SPC_NOMOD)
       
 14716         interest(3)
       
 14717     }
       
 14718     field(LALM, DBF_USHORT) {
       
 14719         prompt("Last Value Alarmed")
       
 14720         interest(3)
       
 14721         special(SPC_NOMOD)
       
 14722     }
       
 14723     field(SDEF, DBF_SHORT) {
       
 14724         prompt("States Defined")
       
 14725         interest(3)
       
 14726         special(SPC_NOMOD)
       
 14727     }
       
 14728     field(SHFT, DBF_USHORT) {
       
 14729         promptgroup("50 - Output")
       
 14730         interest(1)
       
 14731         prompt("Shift")
       
 14732     }
       
 14733     field(SIOL, DBF_OUTLINK) {
       
 14734         promptgroup("90 - Simulate")
       
 14735         interest(1)
       
 14736         prompt("Simulation Output Link")
       
 14737     }
       
 14738     field(SIML, DBF_INLINK) {
       
 14739         prompt("Simulation Mode Link")
       
 14740         promptgroup("90 - Simulate")
       
 14741         interest(1)
       
 14742     }
       
 14743     field(SIMM, DBF_MENU) {
       
 14744         interest(1)
       
 14745         special(SPC_MOD)
       
 14746         prompt("Simulation Mode")
       
 14747         menu(menuYesNo)
       
 14748     }
       
 14749     field(SIMS, DBF_MENU) {
       
 14750         promptgroup("90 - Simulate")
       
 14751         interest(2)
       
 14752         prompt("Simulation Mode Severity")
       
 14753         menu(menuAlarmSevr)
       
 14754     }
       
 14755     field(OLDSIMM, DBF_MENU) {
       
 14756         prompt("Prev. Simulation Mode")
       
 14757         special(SPC_NOMOD)
       
 14758         interest(4)
       
 14759         menu(menuSimm)
       
 14760     }
       
 14761     field(SSCN, DBF_MENU) {
       
 14762         initial("65535")
       
 14763         menu(menuScan)
       
 14764         promptgroup("90 - Simulate")
       
 14765         interest(1)
       
 14766         prompt("Sim. Mode Scan")
       
 14767     }
       
 14768     field(SDLY, DBF_DOUBLE) {
       
 14769         prompt("Sim. Mode Async Delay")
       
 14770         interest(2)
       
 14771         promptgroup("90 - Simulate")
       
 14772         initial("-1.0")
       
 14773     }
 21719     }
 14774     field(SIMPVT, DBF_NOACCESS) {
 21720     field(SIMPVT, DBF_NOACCESS) {
 14775         extra("CALLBACK            *simpvt")
 21721         extra("CALLBACK            *simpvt")
 14776         special(SPC_NOMOD)
       
 14777         interest(4)
       
 14778         prompt("Sim. Mode Private")
 21722         prompt("Sim. Mode Private")
 14779     }
 21723         special(SPC_NOMOD)
 14780     field(IVOA, DBF_MENU) {
 21724         interest(4)
 14781         prompt("INVALID outpt action")
       
 14782         promptgroup("50 - Output")
       
 14783         interest(2)
       
 14784         menu(menuIvoa)
       
 14785     }
       
 14786     field(IVOV, DBF_USHORT) {
       
 14787         interest(2)
       
 14788         promptgroup("50 - Output")
       
 14789         prompt("INVALID output value")
       
 14790     }
 21725     }
 14791 }
 21726 }
 14792 device(mbbo, CONSTANT, devMbboSoft, "Soft Channel")
 21727 device(stringin, CONSTANT, devSiSoft, "Soft Channel")
 14793 device(mbbo, CONSTANT, devMbboSoftRaw, "Raw Soft Channel")
 21728 device(stringin, CONSTANT, devSiSoftCallback, "Async Soft Channel")
 14794 device(mbbo, CONSTANT, devMbboSoftCallback, "Async Soft Channel")
 21729 device(stringin, INST_IO, devTimestampSI, "Soft Timestamp")
 14795 device(mbbo, INST_IO, asynMbboInt32, "asynInt32")
 21730 device(stringin, INST_IO, devSiGeneralTime, "General Time")
 14796 device(mbbo, INST_IO, asynMbboUInt32Digital, "asynUInt32Digital")
 21731 device(stringin, INST_IO, devSiEnviron, "getenv")
 14797 device(mbbo, INST_IO, devmbboStream, "stream")
 21732 device(stringin, INST_IO, asynSiOctetCmdResponse, "asynOctetCmdResponse")
 14798 device(mbbo, INST_IO, devMbboMPC, "asyn MPC")
 21733 device(stringin, INST_IO, asynSiOctetWriteRead, "asynOctetWriteRead")
 14799 device(mbbo, INST_IO, devMbboTPG261, "asyn TPG261")
 21734 device(stringin, INST_IO, asynSiOctetRead, "asynOctetRead")
       
 21735 device(stringin, INST_IO, devstringinStream, "stream")
       
 21736 device(stringin, INST_IO, devCasterSIMsg, "RecCaster")
       
 21737 device(stringin, INST_IO, devSiStrParm, "asyn si stringParm")
       
 21738 device(stringin, INST_IO, devSiMPC, "asyn MPC")
       
 21739 device(stringin, GPIB_IO, devSiGP307Gpib, "Vg307 GPIB Instrument")
       
 21740 device(stringin, INST_IO, devSiTPG261, "asyn TPG261")
 14800 recordtype(printf) {
 21741 recordtype(printf) {
 14801     %#include "epicsTypes.h"
 21742     %#include "epicsTypes.h"
 14802     %#include "link.h"
 21743     %#include "link.h"
 14803     %#include "epicsMutex.h"
 21744     %#include "epicsMutex.h"
 14804     %#include "ellLib.h"
 21745     %#include "ellLib.h"
 14816     %} printfdset;
 21757     %} printfdset;
 14817     %
 21758     %
 14818     %/* Number of INPx fields defined */
 21759     %/* Number of INPx fields defined */
 14819     %#define PRINTF_NLINKS 10
 21760     %#define PRINTF_NLINKS 10
 14820     field(NAME, DBF_STRING) {
 21761     field(NAME, DBF_STRING) {
       
 21762         size(61)
 14821         prompt("Record Name")
 21763         prompt("Record Name")
 14822         special(SPC_NOMOD)
 21764         special(SPC_NOMOD)
 14823         size(61)
       
 14824     }
 21765     }
 14825     field(DESC, DBF_STRING) {
 21766     field(DESC, DBF_STRING) {
 14826         promptgroup("10 - Common")
 21767         size(41)
 14827         prompt("Descriptor")
 21768         prompt("Descriptor")
 14828         size(41)
 21769         promptgroup("10 - Common")
 14829     }
 21770     }
 14830     field(ASG, DBF_STRING) {
 21771     field(ASG, DBF_STRING) {
       
 21772         special(SPC_AS)
       
 21773         promptgroup("10 - Common")
 14831         size(29)
 21774         size(29)
 14832         special(SPC_AS)
       
 14833         promptgroup("10 - Common")
       
 14834         prompt("Access Security Group")
 21775         prompt("Access Security Group")
 14835     }
 21776     }
 14836     field(SCAN, DBF_MENU) {
 21777     field(SCAN, DBF_MENU) {
       
 21778         promptgroup("20 - Scan")
       
 21779         special(SPC_SCAN)
       
 21780         interest(1)
 14837         menu(menuScan)
 21781         menu(menuScan)
 14838         interest(1)
 21782         prompt("Scan Mechanism")
       
 21783     }
       
 21784     field(PINI, DBF_MENU) {
       
 21785         prompt("Process at iocInit")
       
 21786         promptgroup("20 - Scan")
       
 21787         menu(menuPini)
       
 21788         interest(1)
       
 21789     }
       
 21790     field(PHAS, DBF_SHORT) {
       
 21791         prompt("Scan Phase")
 14839         promptgroup("20 - Scan")
 21792         promptgroup("20 - Scan")
 14840         special(SPC_SCAN)
 21793         special(SPC_SCAN)
 14841         prompt("Scan Mechanism")
 21794         interest(1)
 14842     }
 21795     }
 14843     field(PINI, DBF_MENU) {
 21796     field(EVNT, DBF_STRING) {
 14844         menu(menuPini)
       
 14845         prompt("Process at iocInit")
       
 14846         interest(1)
       
 14847         promptgroup("20 - Scan")
       
 14848     }
       
 14849     field(PHAS, DBF_SHORT) {
       
 14850         promptgroup("20 - Scan")
       
 14851         interest(1)
       
 14852         special(SPC_SCAN)
 21797         special(SPC_SCAN)
 14853         prompt("Scan Phase")
 21798         interest(1)
 14854     }
 21799         promptgroup("20 - Scan")
 14855     field(EVNT, DBF_STRING) {
       
 14856         size(40)
 21800         size(40)
 14857         prompt("Event Name")
 21801         prompt("Event Name")
 14858         promptgroup("20 - Scan")
       
 14859         interest(1)
       
 14860         special(SPC_SCAN)
       
 14861     }
 21802     }
 14862     field(TSE, DBF_SHORT) {
 21803     field(TSE, DBF_SHORT) {
 14863         prompt("Time Stamp Event")
 21804         prompt("Time Stamp Event")
 14864         interest(1)
 21805         interest(1)
 14865         promptgroup("20 - Scan")
 21806         promptgroup("20 - Scan")
 14866     }
 21807     }
 14867     field(TSEL, DBF_INLINK) {
 21808     field(TSEL, DBF_INLINK) {
       
 21809         interest(1)
       
 21810         promptgroup("20 - Scan")
 14868         prompt("Time Stamp Link")
 21811         prompt("Time Stamp Link")
 14869         promptgroup("20 - Scan")
       
 14870         interest(1)
       
 14871     }
 21812     }
 14872     field(DTYP, DBF_DEVICE) {
 21813     field(DTYP, DBF_DEVICE) {
 14873         promptgroup("10 - Common")
       
 14874         interest(1)
       
 14875         prompt("Device Type")
 21814         prompt("Device Type")
       
 21815         promptgroup("10 - Common")
       
 21816         interest(1)
 14876     }
 21817     }
 14877     field(DISV, DBF_SHORT) {
 21818     field(DISV, DBF_SHORT) {
 14878         promptgroup("20 - Scan")
 21819         promptgroup("20 - Scan")
       
 21820         initial("1")
 14879         prompt("Disable Value")
 21821         prompt("Disable Value")
 14880         initial("1")
       
 14881     }
 21822     }
 14882     field(DISA, DBF_SHORT) {
 21823     field(DISA, DBF_SHORT) {
 14883         prompt("Disable")
 21824         prompt("Disable")
 14884     }
 21825     }
 14885     field(SDIS, DBF_INLINK) {
 21826     field(SDIS, DBF_INLINK) {
 14886         promptgroup("20 - Scan")
       
 14887         interest(1)
       
 14888         prompt("Scanning Disable")
 21827         prompt("Scanning Disable")
       
 21828         promptgroup("20 - Scan")
       
 21829         interest(1)
 14889     }
 21830     }
 14890     field(MLOK, DBF_NOACCESS) {
 21831     field(MLOK, DBF_NOACCESS) {
 14891         extra("epicsMutexId        mlok")
 21832         extra("epicsMutexId        mlok")
 14892         prompt("Monitor lock")
 21833         prompt("Monitor lock")
 14893         interest(4)
 21834         special(SPC_NOMOD)
 14894         special(SPC_NOMOD)
 21835         interest(4)
 14895     }
 21836     }
 14896     field(MLIS, DBF_NOACCESS) {
 21837     field(MLIS, DBF_NOACCESS) {
       
 21838         extra("ELLLIST             mlis")
 14897         prompt("Monitor List")
 21839         prompt("Monitor List")
 14898         interest(4)
 21840         interest(4)
 14899         special(SPC_NOMOD)
 21841         special(SPC_NOMOD)
 14900         extra("ELLLIST             mlis")
       
 14901     }
 21842     }
 14902     field(BKLNK, DBF_NOACCESS) {
 21843     field(BKLNK, DBF_NOACCESS) {
 14903         extra("ELLLIST             bklnk")
 21844         extra("ELLLIST             bklnk")
 14904         interest(4)
       
 14905         special(SPC_NOMOD)
       
 14906         prompt("Backwards link tracking")
 21845         prompt("Backwards link tracking")
       
 21846         special(SPC_NOMOD)
       
 21847         interest(4)
 14907     }
 21848     }
 14908     field(DISP, DBF_UCHAR) {
 21849     field(DISP, DBF_UCHAR) {
 14909         prompt("Disable putField")
 21850         prompt("Disable putField")
 14910     }
 21851     }
 14911     field(PROC, DBF_UCHAR) {
 21852     field(PROC, DBF_UCHAR) {
       
 21853         pp(TRUE)
       
 21854         interest(3)
 14912         prompt("Force Processing")
 21855         prompt("Force Processing")
 14913         interest(3)
       
 14914         pp(TRUE)
       
 14915     }
 21856     }
 14916     field(STAT, DBF_MENU) {
 21857     field(STAT, DBF_MENU) {
       
 21858         special(SPC_NOMOD)
       
 21859         menu(menuAlarmStat)
 14917         prompt("Alarm Status")
 21860         prompt("Alarm Status")
       
 21861         initial("UDF")
       
 21862     }
       
 21863     field(SEVR, DBF_MENU) {
       
 21864         prompt("Alarm Severity")
       
 21865         special(SPC_NOMOD)
       
 21866         menu(menuAlarmSevr)
       
 21867     }
       
 21868     field(NSTA, DBF_MENU) {
       
 21869         prompt("New Alarm Status")
 14918         special(SPC_NOMOD)
 21870         special(SPC_NOMOD)
 14919         menu(menuAlarmStat)
 21871         menu(menuAlarmStat)
 14920         initial("UDF")
 21872         interest(2)
 14921     }
       
 14922     field(SEVR, DBF_MENU) {
       
 14923         special(SPC_NOMOD)
       
 14924         prompt("Alarm Severity")
       
 14925         menu(menuAlarmSevr)
       
 14926     }
       
 14927     field(NSTA, DBF_MENU) {
       
 14928         special(SPC_NOMOD)
       
 14929         interest(2)
       
 14930         prompt("New Alarm Status")
       
 14931         menu(menuAlarmStat)
       
 14932     }
 21873     }
 14933     field(NSEV, DBF_MENU) {
 21874     field(NSEV, DBF_MENU) {
 14934         menu(menuAlarmSevr)
 21875         interest(2)
       
 21876         menu(menuAlarmSevr)
       
 21877         special(SPC_NOMOD)
 14935         prompt("New Alarm Severity")
 21878         prompt("New Alarm Severity")
 14936         interest(2)
       
 14937         special(SPC_NOMOD)
       
 14938     }
 21879     }
 14939     field(ACKS, DBF_MENU) {
 21880     field(ACKS, DBF_MENU) {
       
 21881         special(SPC_NOMOD)
       
 21882         menu(menuAlarmSevr)
       
 21883         interest(2)
 14940         prompt("Alarm Ack Severity")
 21884         prompt("Alarm Ack Severity")
 14941         special(SPC_NOMOD)
       
 14942         interest(2)
       
 14943         menu(menuAlarmSevr)
       
 14944     }
 21885     }
 14945     field(ACKT, DBF_MENU) {
 21886     field(ACKT, DBF_MENU) {
 14946         interest(2)
 21887         promptgroup("70 - Alarm")
 14947         special(SPC_NOMOD)
 21888         special(SPC_NOMOD)
 14948         promptgroup("70 - Alarm")
 21889         interest(2)
       
 21890         menu(menuYesNo)
 14949         prompt("Alarm Ack Transient")
 21891         prompt("Alarm Ack Transient")
 14950         menu(menuYesNo)
       
 14951         initial("YES")
 21892         initial("YES")
 14952     }
 21893     }
 14953     field(DISS, DBF_MENU) {
 21894     field(DISS, DBF_MENU) {
 14954         menu(menuAlarmSevr)
 21895         interest(1)
       
 21896         menu(menuAlarmSevr)
       
 21897         promptgroup("70 - Alarm")
 14955         prompt("Disable Alarm Sevrty")
 21898         prompt("Disable Alarm Sevrty")
 14956         interest(1)
       
 14957         promptgroup("70 - Alarm")
       
 14958     }
 21899     }
 14959     field(LCNT, DBF_UCHAR) {
 21900     field(LCNT, DBF_UCHAR) {
 14960         interest(2)
 21901         interest(2)
 14961         special(SPC_NOMOD)
 21902         special(SPC_NOMOD)
 14962         prompt("Lock Count")
 21903         prompt("Lock Count")
 14963     }
 21904     }
 14964     field(PACT, DBF_UCHAR) {
 21905     field(PACT, DBF_UCHAR) {
       
 21906         special(SPC_NOMOD)
       
 21907         interest(1)
 14965         prompt("Record active")
 21908         prompt("Record active")
 14966         special(SPC_NOMOD)
       
 14967         interest(1)
       
 14968     }
 21909     }
 14969     field(PUTF, DBF_UCHAR) {
 21910     field(PUTF, DBF_UCHAR) {
 14970         interest(1)
       
 14971         special(SPC_NOMOD)
       
 14972         prompt("dbPutField process")
 21911         prompt("dbPutField process")
       
 21912         special(SPC_NOMOD)
       
 21913         interest(1)
 14973     }
 21914     }
 14974     field(RPRO, DBF_UCHAR) {
 21915     field(RPRO, DBF_UCHAR) {
       
 21916         interest(1)
       
 21917         special(SPC_NOMOD)
 14975         prompt("Reprocess ")
 21918         prompt("Reprocess ")
 14976         special(SPC_NOMOD)
       
 14977         interest(1)
       
 14978     }
 21919     }
 14979     field(ASP, DBF_NOACCESS) {
 21920     field(ASP, DBF_NOACCESS) {
 14980         interest(4)
 21921         special(SPC_NOMOD)
 14981         special(SPC_NOMOD)
 21922         interest(4)
 14982         prompt("Access Security Pvt")
 21923         prompt("Access Security Pvt")
 14983         extra("struct asgMember    *asp")
 21924         extra("struct asgMember    *asp")
 14984     }
 21925     }
 14985     field(PPN, DBF_NOACCESS) {
 21926     field(PPN, DBF_NOACCESS) {
       
 21927         special(SPC_NOMOD)
       
 21928         interest(4)
       
 21929         prompt("pprocessNotify")
 14986         extra("struct processNotify *ppn")
 21930         extra("struct processNotify *ppn")
 14987         prompt("pprocessNotify")
       
 14988         interest(4)
       
 14989         special(SPC_NOMOD)
       
 14990     }
 21931     }
 14991     field(PPNR, DBF_NOACCESS) {
 21932     field(PPNR, DBF_NOACCESS) {
       
 21933         interest(4)
       
 21934         special(SPC_NOMOD)
 14992         prompt("pprocessNotifyRecord")
 21935         prompt("pprocessNotifyRecord")
 14993         interest(4)
       
 14994         special(SPC_NOMOD)
       
 14995         extra("struct processNotifyRecord *ppnr")
 21936         extra("struct processNotifyRecord *ppnr")
 14996     }
 21937     }
 14997     field(SPVT, DBF_NOACCESS) {
 21938     field(SPVT, DBF_NOACCESS) {
       
 21939         special(SPC_NOMOD)
       
 21940         interest(4)
 14998         prompt("Scan Private")
 21941         prompt("Scan Private")
 14999         special(SPC_NOMOD)
       
 15000         interest(4)
       
 15001         extra("struct scan_element *spvt")
 21942         extra("struct scan_element *spvt")
 15002     }
 21943     }
 15003     field(RSET, DBF_NOACCESS) {
 21944     field(RSET, DBF_NOACCESS) {
       
 21945         interest(4)
       
 21946         special(SPC_NOMOD)
 15004         extra("struct typed_rset   *rset")
 21947         extra("struct typed_rset   *rset")
 15005         interest(4)
       
 15006         special(SPC_NOMOD)
       
 15007         prompt("Address of RSET")
 21948         prompt("Address of RSET")
 15008     }
 21949     }
 15009     field(DSET, DBF_NOACCESS) {
 21950     field(DSET, DBF_NOACCESS) {
 15010         interest(4)
 21951         interest(4)
 15011         special(SPC_NOMOD)
 21952         special(SPC_NOMOD)
 15012         prompt("DSET address")
 21953         prompt("DSET address")
 15013         extra("struct dset         *dset")
 21954         extra("struct dset         *dset")
 15014     }
 21955     }
 15015     field(DPVT, DBF_NOACCESS) {
 21956     field(DPVT, DBF_NOACCESS) {
       
 21957         prompt("Device Private")
 15016         extra("void                *dpvt")
 21958         extra("void                *dpvt")
 15017         prompt("Device Private")
 21959         special(SPC_NOMOD)
 15018         interest(4)
 21960         interest(4)
 15019         special(SPC_NOMOD)
       
 15020     }
 21961     }
 15021     field(RDES, DBF_NOACCESS) {
 21962     field(RDES, DBF_NOACCESS) {
 15022         extra("struct dbRecordType *rdes")
 21963         extra("struct dbRecordType *rdes")
 15023         prompt("Address of dbRecordType")
 21964         prompt("Address of dbRecordType")
 15024         interest(4)
 21965         special(SPC_NOMOD)
 15025         special(SPC_NOMOD)
 21966         interest(4)
 15026     }
 21967     }
 15027     field(LSET, DBF_NOACCESS) {
 21968     field(LSET, DBF_NOACCESS) {
 15028         special(SPC_NOMOD)
 21969         special(SPC_NOMOD)
 15029         interest(4)
 21970         interest(4)
       
 21971         extra("struct lockRecord   *lset")
 15030         prompt("Lock Set")
 21972         prompt("Lock Set")
 15031         extra("struct lockRecord   *lset")
       
 15032     }
 21973     }
 15033     field(PRIO, DBF_MENU) {
 21974     field(PRIO, DBF_MENU) {
 15034         prompt("Scheduling Priority")
 21975         prompt("Scheduling Priority")
 15035         interest(1)
 21976         promptgroup("20 - Scan")
 15036         promptgroup("20 - Scan")
 21977         menu(menuPriority)
       
 21978         interest(1)
 15037         special(SPC_SCAN)
 21979         special(SPC_SCAN)
 15038         menu(menuPriority)
       
 15039     }
 21980     }
 15040     field(TPRO, DBF_UCHAR) {
 21981     field(TPRO, DBF_UCHAR) {
 15041         prompt("Trace Processing")
 21982         prompt("Trace Processing")
 15042     }
 21983     }
 15043     field(BKPT, DBF_NOACCESS) {
 21984     field(BKPT, DBF_NOACCESS) {
 15044         interest(1)
 21985         extra("char                bkpt")
 15045         special(SPC_NOMOD)
       
 15046         prompt("Break Point")
 21986         prompt("Break Point")
 15047         extra("char                bkpt")
 21987         special(SPC_NOMOD)
       
 21988         interest(1)
 15048     }
 21989     }
 15049     field(UDF, DBF_UCHAR) {
 21990     field(UDF, DBF_UCHAR) {
 15050         promptgroup("10 - Common")
 21991         interest(1)
 15051         interest(1)
 21992         promptgroup("10 - Common")
       
 21993         pp(TRUE)
       
 21994         initial("1")
 15052         prompt("Undefined")
 21995         prompt("Undefined")
 15053         initial("1")
       
 15054         pp(TRUE)
       
 15055     }
 21996     }
 15056     field(UDFS, DBF_MENU) {
 21997     field(UDFS, DBF_MENU) {
 15057         interest(1)
 21998         promptgroup("70 - Alarm")
 15058         promptgroup("70 - Alarm")
 21999         menu(menuAlarmSevr)
       
 22000         interest(1)
 15059         prompt("Undefined Alarm Sevrty")
 22001         prompt("Undefined Alarm Sevrty")
 15060         menu(menuAlarmSevr)
       
 15061         initial("INVALID")
 22002         initial("INVALID")
 15062     }
 22003     }
 15063     field(TIME, DBF_NOACCESS) {
 22004     field(TIME, DBF_NOACCESS) {
 15064         special(SPC_NOMOD)
 22005         interest(2)
 15065         interest(2)
 22006         special(SPC_NOMOD)
       
 22007         extra("epicsTimeStamp      time")
 15066         prompt("Time")
 22008         prompt("Time")
 15067         extra("epicsTimeStamp      time")
       
 15068     }
 22009     }
 15069     field(FLNK, DBF_FWDLINK) {
 22010     field(FLNK, DBF_FWDLINK) {
 15070         prompt("Forward Process Link")
 22011         prompt("Forward Process Link")
 15071         interest(1)
 22012         interest(1)
 15072         promptgroup("20 - Scan")
 22013         promptgroup("20 - Scan")
 15073     }
 22014     }
 15074     field(VAL, DBF_NOACCESS) {
 22015     field(VAL, DBF_NOACCESS) {
 15075         asl(ASL0)
 22016         asl(ASL0)
       
 22017         extra("char *val")
       
 22018         prompt("Result")
 15076         special(SPC_DBADDR)
 22019         special(SPC_DBADDR)
 15077         prompt("Result")
       
 15078         extra("char *val")
       
 15079         pp(TRUE)
 22020         pp(TRUE)
 15080     }
 22021     }
 15081     field(SIZV, DBF_USHORT) {
 22022     field(SIZV, DBF_USHORT) {
       
 22023         prompt("Size of VAL buffer")
 15082         initial("41")
 22024         initial("41")
 15083         interest(1)
       
 15084         promptgroup("30 - Action")
 22025         promptgroup("30 - Action")
 15085         special(SPC_NOMOD)
 22026         interest(1)
 15086         prompt("Size of VAL buffer")
 22027         special(SPC_NOMOD)
 15087     }
 22028     }
 15088     field(LEN, DBF_ULONG) {
 22029     field(LEN, DBF_ULONG) {
 15089         special(SPC_NOMOD)
       
 15090         prompt("Length of VAL")
 22030         prompt("Length of VAL")
       
 22031         special(SPC_NOMOD)
 15091     }
 22032     }
 15092     field(OUT, DBF_OUTLINK) {
 22033     field(OUT, DBF_OUTLINK) {
 15093         prompt("Output Specification")
 22034         prompt("Output Specification")
 15094         interest(1)
       
 15095         promptgroup("50 - Output")
 22035         promptgroup("50 - Output")
       
 22036         interest(1)
 15096     }
 22037     }
 15097     field(FMT, DBF_STRING) {
 22038     field(FMT, DBF_STRING) {
 15098         pp(TRUE)
 22039         pp(TRUE)
 15099         size(81)
       
 15100         promptgroup("30 - Action")
 22040         promptgroup("30 - Action")
 15101         prompt("Format String")
 22041         prompt("Format String")
       
 22042         size(81)
 15102     }
 22043     }
 15103     field(IVLS, DBF_STRING) {
 22044     field(IVLS, DBF_STRING) {
       
 22045         size(16)
 15104         initial("LNK")
 22046         initial("LNK")
 15105         size(16)
       
 15106         prompt("Invalid Link String")
 22047         prompt("Invalid Link String")
 15107         promptgroup("30 - Action")
 22048         promptgroup("30 - Action")
 15108     }
 22049     }
 15109     field(INP0, DBF_INLINK) {
 22050     field(INP0, DBF_INLINK) {
       
 22051         prompt("Input 0")
 15110         promptgroup("40 - Input")
 22052         promptgroup("40 - Input")
 15111         interest(1)
 22053         interest(1)
 15112         prompt("Input 0")
       
 15113     }
 22054     }
 15114     field(INP1, DBF_INLINK) {
 22055     field(INP1, DBF_INLINK) {
 15115         prompt("Input 1")
 22056         prompt("Input 1")
       
 22057         interest(1)
 15116         promptgroup("40 - Input")
 22058         promptgroup("40 - Input")
 15117         interest(1)
       
 15118     }
 22059     }
 15119     field(INP2, DBF_INLINK) {
 22060     field(INP2, DBF_INLINK) {
       
 22061         prompt("Input 2")
 15120         promptgroup("40 - Input")
 22062         promptgroup("40 - Input")
 15121         interest(1)
 22063         interest(1)
 15122         prompt("Input 2")
       
 15123     }
 22064     }
 15124     field(INP3, DBF_INLINK) {
 22065     field(INP3, DBF_INLINK) {
       
 22066         interest(1)
       
 22067         promptgroup("40 - Input")
 15125         prompt("Input 3")
 22068         prompt("Input 3")
 15126         promptgroup("40 - Input")
       
 15127         interest(1)
       
 15128     }
 22069     }
 15129     field(INP4, DBF_INLINK) {
 22070     field(INP4, DBF_INLINK) {
 15130         promptgroup("40 - Input")
 22071         promptgroup("40 - Input")
 15131         interest(1)
 22072         interest(1)
 15132         prompt("Input 4")
 22073         prompt("Input 4")
 15133     }
 22074     }
 15134     field(INP5, DBF_INLINK) {
 22075     field(INP5, DBF_INLINK) {
 15135         prompt("Input 5")
 22076         prompt("Input 5")
 15136         interest(1)
       
 15137         promptgroup("40 - Input")
 22077         promptgroup("40 - Input")
       
 22078         interest(1)
 15138     }
 22079     }
 15139     field(INP6, DBF_INLINK) {
 22080     field(INP6, DBF_INLINK) {
       
 22081         interest(1)
 15140         promptgroup("40 - Input")
 22082         promptgroup("40 - Input")
 15141         interest(1)
       
 15142         prompt("Input 6")
 22083         prompt("Input 6")
 15143     }
 22084     }
 15144     field(INP7, DBF_INLINK) {
 22085     field(INP7, DBF_INLINK) {
 15145         prompt("Input 7")
 22086         prompt("Input 7")
 15146         interest(1)
       
 15147         promptgroup("40 - Input")
 22087         promptgroup("40 - Input")
       
 22088         interest(1)
 15148     }
 22089     }
 15149     field(INP8, DBF_INLINK) {
 22090     field(INP8, DBF_INLINK) {
 15150         prompt("Input 8")
 22091         prompt("Input 8")
 15151         interest(1)
 22092         interest(1)
 15152         promptgroup("40 - Input")
 22093         promptgroup("40 - Input")
 15153     }
 22094     }
 15154     field(INP9, DBF_INLINK) {
 22095     field(INP9, DBF_INLINK) {
       
 22096         prompt("Input 9")
 15155         promptgroup("40 - Input")
 22097         promptgroup("40 - Input")
 15156         interest(1)
 22098         interest(1)
 15157         prompt("Input 9")
       
 15158     }
 22099     }
 15159 }
 22100 }
 15160 device(printf, CONSTANT, devPrintfSoft, "Soft Channel")
 22101 device(printf, CONSTANT, devPrintfSoft, "Soft Channel")
 15161 device(printf, CONSTANT, devPrintfSoftCallback, "Async Soft Channel")
 22102 device(printf, CONSTANT, devPrintfSoftCallback, "Async Soft Channel")
 15162 device(printf, INST_IO, devPrintfStdio, "stdio")
 22103 device(printf, INST_IO, devPrintfStdio, "stdio")
 15163 recordtype(ao) {
 22104 recordtype(int64out) {
 15164     %#include "epicsTypes.h"
 22105     %#include "epicsTypes.h"
 15165     %#include "link.h"
 22106     %#include "link.h"
 15166     %#include "epicsMutex.h"
 22107     %#include "epicsMutex.h"
 15167     %#include "ellLib.h"
 22108     %#include "ellLib.h"
 15168     %#include "epicsTime.h"
 22109     %#include "epicsTime.h"
 15176         size(41)
 22117         size(41)
 15177         prompt("Descriptor")
 22118         prompt("Descriptor")
 15178         promptgroup("10 - Common")
 22119         promptgroup("10 - Common")
 15179     }
 22120     }
 15180     field(ASG, DBF_STRING) {
 22121     field(ASG, DBF_STRING) {
       
 22122         special(SPC_AS)
       
 22123         promptgroup("10 - Common")
 15181         size(29)
 22124         size(29)
 15182         special(SPC_AS)
       
 15183         promptgroup("10 - Common")
       
 15184         prompt("Access Security Group")
 22125         prompt("Access Security Group")
 15185     }
 22126     }
 15186     field(SCAN, DBF_MENU) {
 22127     field(SCAN, DBF_MENU) {
       
 22128         promptgroup("20 - Scan")
 15187         menu(menuScan)
 22129         menu(menuScan)
       
 22130         interest(1)
       
 22131         special(SPC_SCAN)
 15188         prompt("Scan Mechanism")
 22132         prompt("Scan Mechanism")
 15189         special(SPC_SCAN)
       
 15190         interest(1)
       
 15191         promptgroup("20 - Scan")
       
 15192     }
 22133     }
 15193     field(PINI, DBF_MENU) {
 22134     field(PINI, DBF_MENU) {
       
 22135         promptgroup("20 - Scan")
       
 22136         interest(1)
       
 22137         menu(menuPini)
 15194         prompt("Process at iocInit")
 22138         prompt("Process at iocInit")
 15195         interest(1)
       
 15196         promptgroup("20 - Scan")
       
 15197         menu(menuPini)
       
 15198     }
 22139     }
 15199     field(PHAS, DBF_SHORT) {
 22140     field(PHAS, DBF_SHORT) {
 15200         prompt("Scan Phase")
 22141         prompt("Scan Phase")
 15201         interest(1)
       
 15202         special(SPC_SCAN)
 22142         special(SPC_SCAN)
       
 22143         interest(1)
 15203         promptgroup("20 - Scan")
 22144         promptgroup("20 - Scan")
 15204     }
 22145     }
 15205     field(EVNT, DBF_STRING) {
 22146     field(EVNT, DBF_STRING) {
 15206         interest(1)
 22147         size(40)
       
 22148         prompt("Event Name")
 15207         special(SPC_SCAN)
 22149         special(SPC_SCAN)
 15208         promptgroup("20 - Scan")
 22150         interest(1)
 15209         prompt("Event Name")
 22151         promptgroup("20 - Scan")
 15210         size(40)
       
 15211     }
 22152     }
 15212     field(TSE, DBF_SHORT) {
 22153     field(TSE, DBF_SHORT) {
 15213         interest(1)
 22154         promptgroup("20 - Scan")
 15214         promptgroup("20 - Scan")
 22155         interest(1)
 15215         prompt("Time Stamp Event")
 22156         prompt("Time Stamp Event")
 15216     }
 22157     }
 15217     field(TSEL, DBF_INLINK) {
 22158     field(TSEL, DBF_INLINK) {
       
 22159         interest(1)
       
 22160         promptgroup("20 - Scan")
 15218         prompt("Time Stamp Link")
 22161         prompt("Time Stamp Link")
 15219         promptgroup("20 - Scan")
       
 15220         interest(1)
       
 15221     }
 22162     }
 15222     field(DTYP, DBF_DEVICE) {
 22163     field(DTYP, DBF_DEVICE) {
       
 22164         promptgroup("10 - Common")
       
 22165         interest(1)
 15223         prompt("Device Type")
 22166         prompt("Device Type")
 15224         interest(1)
       
 15225         promptgroup("10 - Common")
       
 15226     }
 22167     }
 15227     field(DISV, DBF_SHORT) {
 22168     field(DISV, DBF_SHORT) {
 15228         initial("1")
 22169         promptgroup("20 - Scan")
 15229         promptgroup("20 - Scan")
 22170         initial("1")
 15230         prompt("Disable Value")
 22171         prompt("Disable Value")
 15231     }
 22172     }
 15232     field(DISA, DBF_SHORT) {
 22173     field(DISA, DBF_SHORT) {
 15233         prompt("Disable")
 22174         prompt("Disable")
 15234     }
 22175     }
 15235     field(SDIS, DBF_INLINK) {
 22176     field(SDIS, DBF_INLINK) {
 15236         promptgroup("20 - Scan")
       
 15237         interest(1)
       
 15238         prompt("Scanning Disable")
 22177         prompt("Scanning Disable")
       
 22178         interest(1)
       
 22179         promptgroup("20 - Scan")
 15239     }
 22180     }
 15240     field(MLOK, DBF_NOACCESS) {
 22181     field(MLOK, DBF_NOACCESS) {
 15241         extra("epicsMutexId        mlok")
 22182         extra("epicsMutexId        mlok")
 15242         prompt("Monitor lock")
 22183         prompt("Monitor lock")
 15243         special(SPC_NOMOD)
 22184         special(SPC_NOMOD)
 15244         interest(4)
 22185         interest(4)
 15245     }
 22186     }
 15246     field(MLIS, DBF_NOACCESS) {
 22187     field(MLIS, DBF_NOACCESS) {
 15247         special(SPC_NOMOD)
       
 15248         interest(4)
       
 15249         prompt("Monitor List")
 22188         prompt("Monitor List")
 15250         extra("ELLLIST             mlis")
 22189         extra("ELLLIST             mlis")
       
 22190         interest(4)
       
 22191         special(SPC_NOMOD)
 15251     }
 22192     }
 15252     field(BKLNK, DBF_NOACCESS) {
 22193     field(BKLNK, DBF_NOACCESS) {
 15253         interest(4)
 22194         interest(4)
 15254         special(SPC_NOMOD)
 22195         special(SPC_NOMOD)
       
 22196         extra("ELLLIST             bklnk")
 15255         prompt("Backwards link tracking")
 22197         prompt("Backwards link tracking")
 15256         extra("ELLLIST             bklnk")
       
 15257     }
 22198     }
 15258     field(DISP, DBF_UCHAR) {
 22199     field(DISP, DBF_UCHAR) {
 15259         prompt("Disable putField")
 22200         prompt("Disable putField")
 15260     }
 22201     }
 15261     field(PROC, DBF_UCHAR) {
 22202     field(PROC, DBF_UCHAR) {
       
 22203         interest(3)
 15262         pp(TRUE)
 22204         pp(TRUE)
 15263         prompt("Force Processing")
 22205         prompt("Force Processing")
 15264         interest(3)
       
 15265     }
 22206     }
 15266     field(STAT, DBF_MENU) {
 22207     field(STAT, DBF_MENU) {
       
 22208         initial("UDF")
 15267         prompt("Alarm Status")
 22209         prompt("Alarm Status")
 15268         special(SPC_NOMOD)
       
 15269         menu(menuAlarmStat)
 22210         menu(menuAlarmStat)
 15270         initial("UDF")
 22211         special(SPC_NOMOD)
 15271     }
 22212     }
 15272     field(SEVR, DBF_MENU) {
 22213     field(SEVR, DBF_MENU) {
 15273         menu(menuAlarmSevr)
       
 15274         prompt("Alarm Severity")
 22214         prompt("Alarm Severity")
       
 22215         menu(menuAlarmSevr)
 15275         special(SPC_NOMOD)
 22216         special(SPC_NOMOD)
 15276     }
 22217     }
 15277     field(NSTA, DBF_MENU) {
 22218     field(NSTA, DBF_MENU) {
 15278         prompt("New Alarm Status")
 22219         prompt("New Alarm Status")
 15279         special(SPC_NOMOD)
 22220         special(SPC_NOMOD)
 15280         interest(2)
       
 15281         menu(menuAlarmStat)
 22221         menu(menuAlarmStat)
       
 22222         interest(2)
 15282     }
 22223     }
 15283     field(NSEV, DBF_MENU) {
 22224     field(NSEV, DBF_MENU) {
 15284         menu(menuAlarmSevr)
 22225         special(SPC_NOMOD)
 15285         special(SPC_NOMOD)
 22226         interest(2)
 15286         interest(2)
 22227         menu(menuAlarmSevr)
 15287         prompt("New Alarm Severity")
 22228         prompt("New Alarm Severity")
 15288     }
 22229     }
 15289     field(ACKS, DBF_MENU) {
 22230     field(ACKS, DBF_MENU) {
 15290         special(SPC_NOMOD)
       
 15291         interest(2)
       
 15292         prompt("Alarm Ack Severity")
 22231         prompt("Alarm Ack Severity")
       
 22232         special(SPC_NOMOD)
       
 22233         interest(2)
 15293         menu(menuAlarmSevr)
 22234         menu(menuAlarmSevr)
 15294     }
 22235     }
 15295     field(ACKT, DBF_MENU) {
 22236     field(ACKT, DBF_MENU) {
 15296         promptgroup("70 - Alarm")
 22237         interest(2)
 15297         interest(2)
 22238         menu(menuYesNo)
 15298         special(SPC_NOMOD)
 22239         special(SPC_NOMOD)
       
 22240         promptgroup("70 - Alarm")
       
 22241         initial("YES")
 15299         prompt("Alarm Ack Transient")
 22242         prompt("Alarm Ack Transient")
 15300         menu(menuYesNo)
       
 15301         initial("YES")
       
 15302     }
 22243     }
 15303     field(DISS, DBF_MENU) {
 22244     field(DISS, DBF_MENU) {
       
 22245         menu(menuAlarmSevr)
       
 22246         interest(1)
       
 22247         promptgroup("70 - Alarm")
 15304         prompt("Disable Alarm Sevrty")
 22248         prompt("Disable Alarm Sevrty")
 15305         promptgroup("70 - Alarm")
       
 15306         interest(1)
       
 15307         menu(menuAlarmSevr)
       
 15308     }
 22249     }
 15309     field(LCNT, DBF_UCHAR) {
 22250     field(LCNT, DBF_UCHAR) {
 15310         interest(2)
       
 15311         special(SPC_NOMOD)
       
 15312         prompt("Lock Count")
 22251         prompt("Lock Count")
       
 22252         special(SPC_NOMOD)
       
 22253         interest(2)
 15313     }
 22254     }
 15314     field(PACT, DBF_UCHAR) {
 22255     field(PACT, DBF_UCHAR) {
       
 22256         interest(1)
       
 22257         special(SPC_NOMOD)
 15315         prompt("Record active")
 22258         prompt("Record active")
 15316         special(SPC_NOMOD)
       
 15317         interest(1)
       
 15318     }
 22259     }
 15319     field(PUTF, DBF_UCHAR) {
 22260     field(PUTF, DBF_UCHAR) {
       
 22261         interest(1)
       
 22262         special(SPC_NOMOD)
 15320         prompt("dbPutField process")
 22263         prompt("dbPutField process")
 15321         interest(1)
       
 15322         special(SPC_NOMOD)
       
 15323     }
 22264     }
 15324     field(RPRO, DBF_UCHAR) {
 22265     field(RPRO, DBF_UCHAR) {
 15325         interest(1)
 22266         interest(1)
 15326         special(SPC_NOMOD)
 22267         special(SPC_NOMOD)
 15327         prompt("Reprocess ")
 22268         prompt("Reprocess ")
 15328     }
 22269     }
 15329     field(ASP, DBF_NOACCESS) {
 22270     field(ASP, DBF_NOACCESS) {
       
 22271         special(SPC_NOMOD)
       
 22272         interest(4)
 15330         prompt("Access Security Pvt")
 22273         prompt("Access Security Pvt")
 15331         special(SPC_NOMOD)
       
 15332         interest(4)
       
 15333         extra("struct asgMember    *asp")
 22274         extra("struct asgMember    *asp")
 15334     }
 22275     }
 15335     field(PPN, DBF_NOACCESS) {
 22276     field(PPN, DBF_NOACCESS) {
       
 22277         interest(4)
       
 22278         special(SPC_NOMOD)
       
 22279         extra("struct processNotify *ppn")
 15336         prompt("pprocessNotify")
 22280         prompt("pprocessNotify")
 15337         interest(4)
       
 15338         special(SPC_NOMOD)
       
 15339         extra("struct processNotify *ppn")
       
 15340     }
 22281     }
 15341     field(PPNR, DBF_NOACCESS) {
 22282     field(PPNR, DBF_NOACCESS) {
       
 22283         extra("struct processNotifyRecord *ppnr")
 15342         prompt("pprocessNotifyRecord")
 22284         prompt("pprocessNotifyRecord")
 15343         special(SPC_NOMOD)
 22285         special(SPC_NOMOD)
 15344         interest(4)
 22286         interest(4)
 15345         extra("struct processNotifyRecord *ppnr")
       
 15346     }
 22287     }
 15347     field(SPVT, DBF_NOACCESS) {
 22288     field(SPVT, DBF_NOACCESS) {
 15348         special(SPC_NOMOD)
 22289         special(SPC_NOMOD)
 15349         interest(4)
 22290         interest(4)
 15350         prompt("Scan Private")
 22291         prompt("Scan Private")
 15351         extra("struct scan_element *spvt")
 22292         extra("struct scan_element *spvt")
 15352     }
 22293     }
 15353     field(RSET, DBF_NOACCESS) {
 22294     field(RSET, DBF_NOACCESS) {
 15354         interest(4)
 22295         special(SPC_NOMOD)
 15355         special(SPC_NOMOD)
 22296         interest(4)
 15356         prompt("Address of RSET")
 22297         prompt("Address of RSET")
 15357         extra("struct typed_rset   *rset")
 22298         extra("struct typed_rset   *rset")
 15358     }
 22299     }
 15359     field(DSET, DBF_NOACCESS) {
 22300     field(DSET, DBF_NOACCESS) {
 15360         interest(4)
 22301         special(SPC_NOMOD)
 15361         special(SPC_NOMOD)
 22302         interest(4)
       
 22303         extra("struct dset         *dset")
 15362         prompt("DSET address")
 22304         prompt("DSET address")
 15363         extra("struct dset         *dset")
       
 15364     }
 22305     }
 15365     field(DPVT, DBF_NOACCESS) {
 22306     field(DPVT, DBF_NOACCESS) {
       
 22307         special(SPC_NOMOD)
       
 22308         interest(4)
 15366         prompt("Device Private")
 22309         prompt("Device Private")
 15367         interest(4)
       
 15368         special(SPC_NOMOD)
       
 15369         extra("void                *dpvt")
 22310         extra("void                *dpvt")
 15370     }
 22311     }
 15371     field(RDES, DBF_NOACCESS) {
 22312     field(RDES, DBF_NOACCESS) {
       
 22313         special(SPC_NOMOD)
       
 22314         interest(4)
 15372         prompt("Address of dbRecordType")
 22315         prompt("Address of dbRecordType")
 15373         interest(4)
       
 15374         special(SPC_NOMOD)
       
 15375         extra("struct dbRecordType *rdes")
 22316         extra("struct dbRecordType *rdes")
 15376     }
 22317     }
 15377     field(LSET, DBF_NOACCESS) {
 22318     field(LSET, DBF_NOACCESS) {
 15378         prompt("Lock Set")
 22319         prompt("Lock Set")
 15379         special(SPC_NOMOD)
       
 15380         interest(4)
       
 15381         extra("struct lockRecord   *lset")
 22320         extra("struct lockRecord   *lset")
       
 22321         special(SPC_NOMOD)
       
 22322         interest(4)
 15382     }
 22323     }
 15383     field(PRIO, DBF_MENU) {
 22324     field(PRIO, DBF_MENU) {
       
 22325         prompt("Scheduling Priority")
 15384         special(SPC_SCAN)
 22326         special(SPC_SCAN)
 15385         interest(1)
       
 15386         promptgroup("20 - Scan")
       
 15387         prompt("Scheduling Priority")
       
 15388         menu(menuPriority)
 22327         menu(menuPriority)
       
 22328         interest(1)
       
 22329         promptgroup("20 - Scan")
 15389     }
 22330     }
 15390     field(TPRO, DBF_UCHAR) {
 22331     field(TPRO, DBF_UCHAR) {
 15391         prompt("Trace Processing")
 22332         prompt("Trace Processing")
 15392     }
 22333     }
 15393     field(BKPT, DBF_NOACCESS) {
 22334     field(BKPT, DBF_NOACCESS) {
 15394         prompt("Break Point")
 22335         prompt("Break Point")
 15395         interest(1)
       
 15396         special(SPC_NOMOD)
       
 15397         extra("char                bkpt")
 22336         extra("char                bkpt")
       
 22337         interest(1)
       
 22338         special(SPC_NOMOD)
 15398     }
 22339     }
 15399     field(UDF, DBF_UCHAR) {
 22340     field(UDF, DBF_UCHAR) {
       
 22341         interest(1)
       
 22342         pp(TRUE)
       
 22343         promptgroup("10 - Common")
       
 22344         initial("1")
 15400         prompt("Undefined")
 22345         prompt("Undefined")
 15401         interest(1)
       
 15402         promptgroup("10 - Common")
       
 15403         initial("1")
       
 15404         pp(TRUE)
       
 15405     }
 22346     }
 15406     field(UDFS, DBF_MENU) {
 22347     field(UDFS, DBF_MENU) {
 15407         prompt("Undefined Alarm Sevrty")
 22348         prompt("Undefined Alarm Sevrty")
 15408         interest(1)
       
 15409         promptgroup("70 - Alarm")
       
 15410         menu(menuAlarmSevr)
       
 15411         initial("INVALID")
 22349         initial("INVALID")
       
 22350         promptgroup("70 - Alarm")
       
 22351         menu(menuAlarmSevr)
       
 22352         interest(1)
 15412     }
 22353     }
 15413     field(TIME, DBF_NOACCESS) {
 22354     field(TIME, DBF_NOACCESS) {
       
 22355         prompt("Time")
 15414         extra("epicsTimeStamp      time")
 22356         extra("epicsTimeStamp      time")
 15415         prompt("Time")
 22357         interest(2)
 15416         special(SPC_NOMOD)
 22358         special(SPC_NOMOD)
 15417         interest(2)
       
 15418     }
 22359     }
 15419     field(FLNK, DBF_FWDLINK) {
 22360     field(FLNK, DBF_FWDLINK) {
 15420         promptgroup("20 - Scan")
       
 15421         interest(1)
       
 15422         prompt("Forward Process Link")
 22361         prompt("Forward Process Link")
 15423     }
 22362         interest(1)
 15424     field(VAL, DBF_DOUBLE) {
 22363         promptgroup("20 - Scan")
 15425         pp(TRUE)
 22364     }
       
 22365     field(VAL, DBF_INT64) {
       
 22366         prompt("Desired Output")
 15426         asl(ASL0)
 22367         asl(ASL0)
 15427         prompt("Desired Output")
       
 15428         promptgroup("50 - Output")
 22368         promptgroup("50 - Output")
 15429     }
 22369         pp(TRUE)
 15430     field(OVAL, DBF_DOUBLE) {
       
 15431         prompt("Output Value")
       
 15432     }
 22370     }
 15433     field(OUT, DBF_OUTLINK) {
 22371     field(OUT, DBF_OUTLINK) {
       
 22372         promptgroup("50 - Output")
       
 22373         interest(1)
 15434         prompt("Output Specification")
 22374         prompt("Output Specification")
 15435         interest(1)
       
 15436         promptgroup("50 - Output")
       
 15437     }
       
 15438     field(OROC, DBF_DOUBLE) {
       
 15439         promptgroup("50 - Output")
       
 15440         interest(1)
       
 15441         prompt("Output Rate of Change")
       
 15442     }
 22375     }
 15443     field(DOL, DBF_INLINK) {
 22376     field(DOL, DBF_INLINK) {
       
 22377         interest(1)
       
 22378         promptgroup("40 - Input")
 15444         prompt("Desired Output Loc")
 22379         prompt("Desired Output Loc")
 15445         interest(1)
       
 15446         promptgroup("40 - Input")
       
 15447     }
 22380     }
 15448     field(OMSL, DBF_MENU) {
 22381     field(OMSL, DBF_MENU) {
 15449         prompt("Output Mode Select")
 22382         prompt("Output Mode Select")
 15450         promptgroup("50 - Output")
 22383         promptgroup("50 - Output")
 15451         interest(1)
       
 15452         menu(menuOmsl)
 22384         menu(menuOmsl)
 15453     }
 22385         interest(1)
 15454     field(OIF, DBF_MENU) {
 22386     }
 15455         promptgroup("50 - Output")
 22387     field(EGU, DBF_STRING) {
 15456         interest(1)
 22388         prompt("Units name")
 15457         prompt("Out Full/Incremental")
 22389         size(16)
 15458         menu(aoOIF)
 22390         promptgroup("80 - Display")
 15459     }
 22391         interest(1)
 15460     field(PREC, DBF_SHORT) {
 22392         prop(YES)
 15461         prompt("Display Precision")
 22393     }
       
 22394     field(DRVH, DBF_INT64) {
       
 22395         prompt("Drive High Limit")
       
 22396         interest(1)
       
 22397         prop(YES)
       
 22398         pp(TRUE)
       
 22399         promptgroup("30 - Action")
       
 22400     }
       
 22401     field(DRVL, DBF_INT64) {
       
 22402         prompt("Drive Low Limit")
       
 22403         promptgroup("30 - Action")
       
 22404         pp(TRUE)
       
 22405         prop(YES)
       
 22406         interest(1)
       
 22407     }
       
 22408     field(HOPR, DBF_INT64) {
 15462         promptgroup("80 - Display")
 22409         promptgroup("80 - Display")
 15463         prop(YES)
 22410         prop(YES)
 15464         interest(1)
 22411         interest(1)
 15465     }
 22412         prompt("High Operating Range")
 15466     field(LINR, DBF_MENU) {
 22413     }
 15467         pp(TRUE)
 22414     field(LOPR, DBF_INT64) {
 15468         promptgroup("60 - Convert")
 22415         prompt("Low Operating Range")
 15469         interest(1)
       
 15470         special(SPC_LINCONV)
       
 15471         prompt("Linearization")
       
 15472         menu(menuConvert)
       
 15473     }
       
 15474     field(EGUF, DBF_DOUBLE) {
       
 15475         pp(TRUE)
       
 15476         prompt("Eng Units Full")
       
 15477         special(SPC_LINCONV)
       
 15478         interest(1)
       
 15479         promptgroup("60 - Convert")
       
 15480     }
       
 15481     field(EGUL, DBF_DOUBLE) {
       
 15482         prompt("Eng Units Low")
       
 15483         interest(1)
       
 15484         special(SPC_LINCONV)
       
 15485         promptgroup("60 - Convert")
       
 15486         pp(TRUE)
       
 15487     }
       
 15488     field(EGU, DBF_STRING) {
       
 15489         promptgroup("80 - Display")
 22416         promptgroup("80 - Display")
       
 22417         interest(1)
 15490         prop(YES)
 22418         prop(YES)
 15491         interest(1)
 22419     }
 15492         prompt("Engineering Units")
 22420     field(HIHI, DBF_INT64) {
 15493         size(16)
 22421         prompt("Hihi Alarm Limit")
 15494     }
 22422         pp(TRUE)
 15495     field(ROFF, DBF_ULONG) {
 22423         promptgroup("70 - Alarm")
 15496         pp(TRUE)
       
 15497         interest(2)
       
 15498         prompt("Raw Offset")
       
 15499     }
       
 15500     field(EOFF, DBF_DOUBLE) {
       
 15501         pp(TRUE)
       
 15502         promptgroup("60 - Convert")
       
 15503         interest(2)
       
 15504         prompt("EGU to Raw Offset")
       
 15505     }
       
 15506     field(ESLO, DBF_DOUBLE) {
       
 15507         initial("1")
       
 15508         pp(TRUE)
       
 15509         prompt("EGU to Raw Slope")
       
 15510         interest(2)
       
 15511         promptgroup("60 - Convert")
       
 15512     }
       
 15513     field(DRVH, DBF_DOUBLE) {
       
 15514         prompt("Drive High Limit")
       
 15515         prop(YES)
 22424         prop(YES)
 15516         interest(1)
 22425         interest(1)
 15517         promptgroup("30 - Action")
 22426     }
 15518         pp(TRUE)
 22427     field(LOLO, DBF_INT64) {
 15519     }
 22428         promptgroup("70 - Alarm")
 15520     field(DRVL, DBF_DOUBLE) {
       
 15521         pp(TRUE)
 22429         pp(TRUE)
 15522         prop(YES)
 22430         prop(YES)
 15523         promptgroup("30 - Action")
 22431         interest(1)
 15524         interest(1)
 22432         prompt("Lolo Alarm Limit")
 15525         prompt("Drive Low Limit")
 22433     }
 15526     }
 22434     field(HIGH, DBF_INT64) {
 15527     field(HOPR, DBF_DOUBLE) {
 22435         promptgroup("70 - Alarm")
       
 22436         pp(TRUE)
       
 22437         interest(1)
 15528         prop(YES)
 22438         prop(YES)
 15529         interest(1)
 22439         prompt("High Alarm Limit")
 15530         promptgroup("80 - Display")
 22440     }
 15531         prompt("High Operating Range")
 22441     field(LOW, DBF_INT64) {
 15532     }
 22442         prompt("Low Alarm Limit")
 15533     field(LOPR, DBF_DOUBLE) {
 22443         promptgroup("70 - Alarm")
 15534         prompt("Low Operating Range")
 22444         pp(TRUE)
       
 22445         interest(1)
 15535         prop(YES)
 22446         prop(YES)
 15536         interest(1)
       
 15537         promptgroup("80 - Display")
       
 15538     }
       
 15539     field(AOFF, DBF_DOUBLE) {
       
 15540         pp(TRUE)
       
 15541         interest(1)
       
 15542         promptgroup("60 - Convert")
       
 15543         prompt("Adjustment Offset")
       
 15544     }
       
 15545     field(ASLO, DBF_DOUBLE) {
       
 15546         interest(1)
       
 15547         promptgroup("60 - Convert")
       
 15548         prompt("Adjustment Slope")
       
 15549         pp(TRUE)
       
 15550     }
       
 15551     field(HIHI, DBF_DOUBLE) {
       
 15552         pp(TRUE)
       
 15553         prompt("Hihi Alarm Limit")
       
 15554         prop(YES)
       
 15555         promptgroup("70 - Alarm")
       
 15556         interest(1)
       
 15557     }
       
 15558     field(LOLO, DBF_DOUBLE) {
       
 15559         pp(TRUE)
       
 15560         prompt("Lolo Alarm Limit")
       
 15561         prop(YES)
       
 15562         interest(1)
       
 15563         promptgroup("70 - Alarm")
       
 15564     }
       
 15565     field(HIGH, DBF_DOUBLE) {
       
 15566         pp(TRUE)
       
 15567         prompt("High Alarm Limit")
       
 15568         prop(YES)
       
 15569         promptgroup("70 - Alarm")
       
 15570         interest(1)
       
 15571     }
       
 15572     field(LOW, DBF_DOUBLE) {
       
 15573         pp(TRUE)
       
 15574         prop(YES)
       
 15575         promptgroup("70 - Alarm")
       
 15576         interest(1)
       
 15577         prompt("Low Alarm Limit")
       
 15578     }
 22447     }
 15579     field(HHSV, DBF_MENU) {
 22448     field(HHSV, DBF_MENU) {
 15580         prompt("Hihi Severity")
 22449         prompt("Hihi Severity")
 15581         prop(YES)
 22450         promptgroup("70 - Alarm")
 15582         promptgroup("70 - Alarm")
 22451         pp(TRUE)
 15583         interest(1)
 22452         menu(menuAlarmSevr)
 15584         menu(menuAlarmSevr)
 22453         interest(1)
 15585         pp(TRUE)
       
 15586     }
 22454     }
 15587     field(LLSV, DBF_MENU) {
 22455     field(LLSV, DBF_MENU) {
 15588         prompt("Lolo Severity")
 22456         prompt("Lolo Severity")
 15589         prop(YES)
 22457         menu(menuAlarmSevr)
 15590         interest(1)
 22458         interest(1)
 15591         promptgroup("70 - Alarm")
 22459         pp(TRUE)
 15592         menu(menuAlarmSevr)
 22460         promptgroup("70 - Alarm")
 15593         pp(TRUE)
       
 15594     }
 22461     }
 15595     field(HSV, DBF_MENU) {
 22462     field(HSV, DBF_MENU) {
 15596         prop(YES)
       
 15597         interest(1)
       
 15598         promptgroup("70 - Alarm")
       
 15599         prompt("High Severity")
 22463         prompt("High Severity")
 15600         menu(menuAlarmSevr)
 22464         pp(TRUE)
 15601         pp(TRUE)
 22465         promptgroup("70 - Alarm")
       
 22466         menu(menuAlarmSevr)
       
 22467         interest(1)
 15602     }
 22468     }
 15603     field(LSV, DBF_MENU) {
 22469     field(LSV, DBF_MENU) {
 15604         pp(TRUE)
       
 15605         menu(menuAlarmSevr)
       
 15606         prop(YES)
       
 15607         promptgroup("70 - Alarm")
       
 15608         interest(1)
       
 15609         prompt("Low Severity")
 22470         prompt("Low Severity")
 15610     }
 22471         interest(1)
 15611     field(HYST, DBF_DOUBLE) {
 22472         menu(menuAlarmSevr)
       
 22473         pp(TRUE)
       
 22474         promptgroup("70 - Alarm")
       
 22475     }
       
 22476     field(HYST, DBF_INT64) {
       
 22477         promptgroup("70 - Alarm")
       
 22478         interest(1)
 15612         prompt("Alarm Deadband")
 22479         prompt("Alarm Deadband")
 15613         interest(1)
 22480     }
 15614         promptgroup("70 - Alarm")
 22481     field(ADEL, DBF_INT64) {
 15615     }
 22482         promptgroup("80 - Display")
 15616     field(ADEL, DBF_DOUBLE) {
 22483         interest(1)
 15617         prompt("Archive Deadband")
 22484         prompt("Archive Deadband")
       
 22485     }
       
 22486     field(MDEL, DBF_INT64) {
       
 22487         prompt("Monitor Deadband")
 15618         promptgroup("80 - Display")
 22488         promptgroup("80 - Display")
 15619         interest(1)
 22489         interest(1)
 15620     }
 22490     }
 15621     field(MDEL, DBF_DOUBLE) {
 22491     field(LALM, DBF_INT64) {
 15622         promptgroup("80 - Display")
 22492         special(SPC_NOMOD)
 15623         interest(1)
 22493         interest(3)
 15624         prompt("Monitor Deadband")
       
 15625     }
       
 15626     field(RVAL, DBF_LONG) {
       
 15627         prompt("Current Raw Value")
       
 15628         pp(TRUE)
       
 15629     }
       
 15630     field(ORAW, DBF_LONG) {
       
 15631         interest(3)
       
 15632         special(SPC_NOMOD)
       
 15633         prompt("Previous Raw Value")
       
 15634     }
       
 15635     field(RBV, DBF_LONG) {
       
 15636         prompt("Readback Value")
       
 15637         special(SPC_NOMOD)
       
 15638     }
       
 15639     field(ORBV, DBF_LONG) {
       
 15640         prompt("Prev Readback Value")
       
 15641         special(SPC_NOMOD)
       
 15642         interest(3)
       
 15643     }
       
 15644     field(PVAL, DBF_DOUBLE) {
       
 15645         special(SPC_NOMOD)
       
 15646         interest(3)
       
 15647         prompt("Previous value")
       
 15648     }
       
 15649     field(LALM, DBF_DOUBLE) {
       
 15650         prompt("Last Value Alarmed")
 22494         prompt("Last Value Alarmed")
 15651         interest(3)
 22495     }
 15652         special(SPC_NOMOD)
 22496     field(ALST, DBF_INT64) {
 15653     }
       
 15654     field(ALST, DBF_DOUBLE) {
       
 15655         special(SPC_NOMOD)
 22497         special(SPC_NOMOD)
 15656         interest(3)
 22498         interest(3)
 15657         prompt("Last Value Archived")
 22499         prompt("Last Value Archived")
 15658     }
 22500     }
 15659     field(MLST, DBF_DOUBLE) {
 22501     field(MLST, DBF_INT64) {
 15660         prompt("Last Val Monitored")
 22502         prompt("Last Val Monitored")
 15661         interest(3)
 22503         special(SPC_NOMOD)
 15662         special(SPC_NOMOD)
 22504         interest(3)
 15663     }
       
 15664     field(PBRK, DBF_NOACCESS) {
       
 15665         extra("void *   pbrk")
       
 15666         interest(4)
       
 15667         special(SPC_NOMOD)
       
 15668         prompt("Ptrto brkTable")
       
 15669     }
       
 15670     field(INIT, DBF_SHORT) {
       
 15671         prompt("Initialized?")
       
 15672         interest(3)
       
 15673         special(SPC_NOMOD)
       
 15674     }
       
 15675     field(LBRK, DBF_SHORT) {
       
 15676         prompt("LastBreak Point")
       
 15677         interest(3)
       
 15678         special(SPC_NOMOD)
       
 15679     }
 22505     }
 15680     field(SIOL, DBF_OUTLINK) {
 22506     field(SIOL, DBF_OUTLINK) {
       
 22507         prompt("Simulation Output Link")
 15681         interest(1)
 22508         interest(1)
 15682         promptgroup("90 - Simulate")
 22509         promptgroup("90 - Simulate")
 15683         prompt("Simulation Output Link")
       
 15684     }
 22510     }
 15685     field(SIML, DBF_INLINK) {
 22511     field(SIML, DBF_INLINK) {
 15686         interest(1)
 22512         interest(1)
 15687         promptgroup("90 - Simulate")
 22513         promptgroup("90 - Simulate")
 15688         prompt("Simulation Mode Link")
 22514         prompt("Simulation Mode Link")
 15689     }
 22515     }
 15690     field(SIMM, DBF_MENU) {
 22516     field(SIMM, DBF_MENU) {
       
 22517         special(SPC_MOD)
       
 22518         menu(menuYesNo)
       
 22519         interest(1)
 15691         prompt("Simulation Mode")
 22520         prompt("Simulation Mode")
 15692         interest(1)
       
 15693         special(SPC_MOD)
       
 15694         menu(menuYesNo)
       
 15695     }
 22521     }
 15696     field(SIMS, DBF_MENU) {
 22522     field(SIMS, DBF_MENU) {
       
 22523         menu(menuAlarmSevr)
       
 22524         interest(2)
       
 22525         promptgroup("90 - Simulate")
 15697         prompt("Simulation Mode Severity")
 22526         prompt("Simulation Mode Severity")
 15698         interest(2)
 22527     }
       
 22528     field(OLDSIMM, DBF_MENU) {
       
 22529         interest(4)
       
 22530         menu(menuSimm)
       
 22531         special(SPC_NOMOD)
       
 22532         prompt("Prev. Simulation Mode")
       
 22533     }
       
 22534     field(SSCN, DBF_MENU) {
       
 22535         prompt("Sim. Mode Scan")
       
 22536         initial("65535")
 15699         promptgroup("90 - Simulate")
 22537         promptgroup("90 - Simulate")
 15700         menu(menuAlarmSevr)
       
 15701     }
       
 15702     field(OLDSIMM, DBF_MENU) {
       
 15703         interest(4)
       
 15704         special(SPC_NOMOD)
       
 15705         prompt("Prev. Simulation Mode")
       
 15706         menu(menuSimm)
       
 15707     }
       
 15708     field(SSCN, DBF_MENU) {
       
 15709         promptgroup("90 - Simulate")
       
 15710         interest(1)
       
 15711         prompt("Sim. Mode Scan")
       
 15712         menu(menuScan)
 22538         menu(menuScan)
 15713         initial("65535")
 22539         interest(1)
 15714     }
 22540     }
 15715     field(SDLY, DBF_DOUBLE) {
 22541     field(SDLY, DBF_DOUBLE) {
 15716         prompt("Sim. Mode Async Delay")
 22542         prompt("Sim. Mode Async Delay")
 15717         interest(2)
 22543         initial("-1.0")
 15718         promptgroup("90 - Simulate")
 22544         promptgroup("90 - Simulate")
 15719         initial("-1.0")
 22545         interest(2)
 15720     }
 22546     }
 15721     field(SIMPVT, DBF_NOACCESS) {
 22547     field(SIMPVT, DBF_NOACCESS) {
       
 22548         special(SPC_NOMOD)
       
 22549         interest(4)
 15722         prompt("Sim. Mode Private")
 22550         prompt("Sim. Mode Private")
 15723         special(SPC_NOMOD)
       
 15724         interest(4)
       
 15725         extra("CALLBACK            *simpvt")
 22551         extra("CALLBACK            *simpvt")
 15726     }
 22552     }
 15727     field(IVOA, DBF_MENU) {
 22553     field(IVOA, DBF_MENU) {
 15728         prompt("INVALID output action")
 22554         prompt("INVALID output action")
 15729         promptgroup("50 - Output")
 22555         promptgroup("50 - Output")
 15730         interest(2)
 22556         interest(2)
 15731         menu(menuIvoa)
 22557         menu(menuIvoa)
 15732     }
 22558     }
 15733     field(IVOV, DBF_DOUBLE) {
 22559     field(IVOV, DBF_INT64) {
 15734         promptgroup("50 - Output")
 22560         promptgroup("50 - Output")
 15735         interest(2)
 22561         interest(2)
 15736         prompt("INVALID output value")
 22562         prompt("INVALID output value")
 15737     }
 22563     }
 15738     field(OMOD, DBF_UCHAR) {
       
 15739         special(SPC_NOMOD)
       
 15740         prompt("Was OVAL modified?")
       
 15741     }
       
 15742 }
 22564 }
 15743 device(ao, CONSTANT, devAoSoft, "Soft Channel")
 22565 device(int64out, CONSTANT, devI64outSoft, "Soft Channel")
 15744 device(ao, CONSTANT, devAoSoftRaw, "Raw Soft Channel")
 22566 device(int64out, CONSTANT, devI64outSoftCallback, "Async Soft Channel")
 15745 device(ao, CONSTANT, devAoSoftCallback, "Async Soft Channel")
 22567 recordtype(lsi) {
 15746 device(ao, INST_IO, asynAoInt32, "asynInt32")
       
 15747 device(ao, INST_IO, asynAoFloat64, "asynFloat64")
       
 15748 device(ao, INST_IO, devaoStream, "stream")
       
 15749 device(ao, INST_IO, devAoStrParm, "asyn ao stringParm")
       
 15750 device(ao, INST_IO, devAoEurotherm, "asyn ao Eurotherm")
       
 15751 device(ao, INST_IO, devAoMPC, "asyn MPC")
       
 15752 device(ao, BBGPIB_IO, devAoAX301, "PZT Bug")
       
 15753 device(ao, INST_IO, devAoTPG261, "asyn TPG261")
       
 15754 recordtype(asyn) {
       
 15755     %#include "epicsTypes.h"
       
 15756     %#include "link.h"
       
 15757     %#include "epicsMutex.h"
       
 15758     %#include "ellLib.h"
       
 15759     %#include "epicsTime.h"
       
 15760     field(NAME, DBF_STRING) {
       
 15761         size(61)
       
 15762         special(SPC_NOMOD)
       
 15763         prompt("Record Name")
       
 15764     }
       
 15765     field(DESC, DBF_STRING) {
       
 15766         promptgroup("10 - Common")
       
 15767         prompt("Descriptor")
       
 15768         size(41)
       
 15769     }
       
 15770     field(ASG, DBF_STRING) {
       
 15771         size(29)
       
 15772         special(SPC_AS)
       
 15773         promptgroup("10 - Common")
       
 15774         prompt("Access Security Group")
       
 15775     }
       
 15776     field(SCAN, DBF_MENU) {
       
 15777         special(SPC_SCAN)
       
 15778         interest(1)
       
 15779         promptgroup("20 - Scan")
       
 15780         prompt("Scan Mechanism")
       
 15781         menu(menuScan)
       
 15782     }
       
 15783     field(PINI, DBF_MENU) {
       
 15784         menu(menuPini)
       
 15785         prompt("Process at iocInit")
       
 15786         promptgroup("20 - Scan")
       
 15787         interest(1)
       
 15788     }
       
 15789     field(PHAS, DBF_SHORT) {
       
 15790         special(SPC_SCAN)
       
 15791         interest(1)
       
 15792         promptgroup("20 - Scan")
       
 15793         prompt("Scan Phase")
       
 15794     }
       
 15795     field(EVNT, DBF_STRING) {
       
 15796         promptgroup("20 - Scan")
       
 15797         interest(1)
       
 15798         special(SPC_SCAN)
       
 15799         prompt("Event Name")
       
 15800         size(40)
       
 15801     }
       
 15802     field(TSE, DBF_SHORT) {
       
 15803         interest(1)
       
 15804         promptgroup("20 - Scan")
       
 15805         prompt("Time Stamp Event")
       
 15806     }
       
 15807     field(TSEL, DBF_INLINK) {
       
 15808         interest(1)
       
 15809         promptgroup("20 - Scan")
       
 15810         prompt("Time Stamp Link")
       
 15811     }
       
 15812     field(DTYP, DBF_DEVICE) {
       
 15813         promptgroup("10 - Common")
       
 15814         interest(1)
       
 15815         prompt("Device Type")
       
 15816     }
       
 15817     field(DISV, DBF_SHORT) {
       
 15818         promptgroup("20 - Scan")
       
 15819         prompt("Disable Value")
       
 15820         initial("1")
       
 15821     }
       
 15822     field(DISA, DBF_SHORT) {
       
 15823         prompt("Disable")
       
 15824     }
       
 15825     field(SDIS, DBF_INLINK) {
       
 15826         prompt("Scanning Disable")
       
 15827         promptgroup("20 - Scan")
       
 15828         interest(1)
       
 15829     }
       
 15830     field(MLOK, DBF_NOACCESS) {
       
 15831         extra("epicsMutexId        mlok")
       
 15832         interest(4)
       
 15833         special(SPC_NOMOD)
       
 15834         prompt("Monitor lock")
       
 15835     }
       
 15836     field(MLIS, DBF_NOACCESS) {
       
 15837         special(SPC_NOMOD)
       
 15838         interest(4)
       
 15839         prompt("Monitor List")
       
 15840         extra("ELLLIST             mlis")
       
 15841     }
       
 15842     field(BKLNK, DBF_NOACCESS) {
       
 15843         special(SPC_NOMOD)
       
 15844         interest(4)
       
 15845         prompt("Backwards link tracking")
       
 15846         extra("ELLLIST             bklnk")
       
 15847     }
       
 15848     field(DISP, DBF_UCHAR) {
       
 15849         prompt("Disable putField")
       
 15850     }
       
 15851     field(PROC, DBF_UCHAR) {
       
 15852         prompt("Force Processing")
       
 15853         interest(3)
       
 15854         pp(TRUE)
       
 15855     }
       
 15856     field(STAT, DBF_MENU) {
       
 15857         initial("UDF")
       
 15858         prompt("Alarm Status")
       
 15859         special(SPC_NOMOD)
       
 15860         menu(menuAlarmStat)
       
 15861     }
       
 15862     field(SEVR, DBF_MENU) {
       
 15863         special(SPC_NOMOD)
       
 15864         prompt("Alarm Severity")
       
 15865         menu(menuAlarmSevr)
       
 15866     }
       
 15867     field(NSTA, DBF_MENU) {
       
 15868         special(SPC_NOMOD)
       
 15869         interest(2)
       
 15870         prompt("New Alarm Status")
       
 15871         menu(menuAlarmStat)
       
 15872     }
       
 15873     field(NSEV, DBF_MENU) {
       
 15874         prompt("New Alarm Severity")
       
 15875         special(SPC_NOMOD)
       
 15876         interest(2)
       
 15877         menu(menuAlarmSevr)
       
 15878     }
       
 15879     field(ACKS, DBF_MENU) {
       
 15880         interest(2)
       
 15881         special(SPC_NOMOD)
       
 15882         prompt("Alarm Ack Severity")
       
 15883         menu(menuAlarmSevr)
       
 15884     }
       
 15885     field(ACKT, DBF_MENU) {
       
 15886         initial("YES")
       
 15887         menu(menuYesNo)
       
 15888         special(SPC_NOMOD)
       
 15889         interest(2)
       
 15890         promptgroup("70 - Alarm")
       
 15891         prompt("Alarm Ack Transient")
       
 15892     }
       
 15893     field(DISS, DBF_MENU) {
       
 15894         menu(menuAlarmSevr)
       
 15895         promptgroup("70 - Alarm")
       
 15896         interest(1)
       
 15897         prompt("Disable Alarm Sevrty")
       
 15898     }
       
 15899     field(LCNT, DBF_UCHAR) {
       
 15900         prompt("Lock Count")
       
 15901         interest(2)
       
 15902         special(SPC_NOMOD)
       
 15903     }
       
 15904     field(PACT, DBF_UCHAR) {
       
 15905         interest(1)
       
 15906         special(SPC_NOMOD)
       
 15907         prompt("Record active")
       
 15908     }
       
 15909     field(PUTF, DBF_UCHAR) {
       
 15910         prompt("dbPutField process")
       
 15911         special(SPC_NOMOD)
       
 15912         interest(1)
       
 15913     }
       
 15914     field(RPRO, DBF_UCHAR) {
       
 15915         special(SPC_NOMOD)
       
 15916         interest(1)
       
 15917         prompt("Reprocess ")
       
 15918     }
       
 15919     field(ASP, DBF_NOACCESS) {
       
 15920         interest(4)
       
 15921         special(SPC_NOMOD)
       
 15922         prompt("Access Security Pvt")
       
 15923         extra("struct asgMember    *asp")
       
 15924     }
       
 15925     field(PPN, DBF_NOACCESS) {
       
 15926         interest(4)
       
 15927         special(SPC_NOMOD)
       
 15928         prompt("pprocessNotify")
       
 15929         extra("struct processNotify *ppn")
       
 15930     }
       
 15931     field(PPNR, DBF_NOACCESS) {
       
 15932         prompt("pprocessNotifyRecord")
       
 15933         special(SPC_NOMOD)
       
 15934         interest(4)
       
 15935         extra("struct processNotifyRecord *ppnr")
       
 15936     }
       
 15937     field(SPVT, DBF_NOACCESS) {
       
 15938         interest(4)
       
 15939         special(SPC_NOMOD)
       
 15940         prompt("Scan Private")
       
 15941         extra("struct scan_element *spvt")
       
 15942     }
       
 15943     field(RSET, DBF_NOACCESS) {
       
 15944         extra("struct typed_rset   *rset")
       
 15945         special(SPC_NOMOD)
       
 15946         interest(4)
       
 15947         prompt("Address of RSET")
       
 15948     }
       
 15949     field(DSET, DBF_NOACCESS) {
       
 15950         extra("struct dset         *dset")
       
 15951         prompt("DSET address")
       
 15952         special(SPC_NOMOD)
       
 15953         interest(4)
       
 15954     }
       
 15955     field(DPVT, DBF_NOACCESS) {
       
 15956         extra("void                *dpvt")
       
 15957         prompt("Device Private")
       
 15958         special(SPC_NOMOD)
       
 15959         interest(4)
       
 15960     }
       
 15961     field(RDES, DBF_NOACCESS) {
       
 15962         extra("struct dbRecordType *rdes")
       
 15963         prompt("Address of dbRecordType")
       
 15964         special(SPC_NOMOD)
       
 15965         interest(4)
       
 15966     }
       
 15967     field(LSET, DBF_NOACCESS) {
       
 15968         special(SPC_NOMOD)
       
 15969         interest(4)
       
 15970         prompt("Lock Set")
       
 15971         extra("struct lockRecord   *lset")
       
 15972     }
       
 15973     field(PRIO, DBF_MENU) {
       
 15974         interest(1)
       
 15975         promptgroup("20 - Scan")
       
 15976         special(SPC_SCAN)
       
 15977         prompt("Scheduling Priority")
       
 15978         menu(menuPriority)
       
 15979     }
       
 15980     field(TPRO, DBF_UCHAR) {
       
 15981         prompt("Trace Processing")
       
 15982     }
       
 15983     field(BKPT, DBF_NOACCESS) {
       
 15984         interest(1)
       
 15985         special(SPC_NOMOD)
       
 15986         prompt("Break Point")
       
 15987         extra("char                bkpt")
       
 15988     }
       
 15989     field(UDF, DBF_UCHAR) {
       
 15990         interest(1)
       
 15991         promptgroup("10 - Common")
       
 15992         prompt("Undefined")
       
 15993         pp(TRUE)
       
 15994         initial("1")
       
 15995     }
       
 15996     field(UDFS, DBF_MENU) {
       
 15997         initial("INVALID")
       
 15998         menu(menuAlarmSevr)
       
 15999         interest(1)
       
 16000         promptgroup("70 - Alarm")
       
 16001         prompt("Undefined Alarm Sevrty")
       
 16002     }
       
 16003     field(TIME, DBF_NOACCESS) {
       
 16004         extra("epicsTimeStamp      time")
       
 16005         interest(2)
       
 16006         special(SPC_NOMOD)
       
 16007         prompt("Time")
       
 16008     }
       
 16009     field(FLNK, DBF_FWDLINK) {
       
 16010         interest(1)
       
 16011         promptgroup("20 - Scan")
       
 16012         prompt("Forward Process Link")
       
 16013     }
       
 16014     field(VAL, DBF_LONG) {
       
 16015         asl(ASL0)
       
 16016         interest(4)
       
 16017         prompt("Value field (unused)")
       
 16018     }
       
 16019     field(PORT, DBF_STRING) {
       
 16020         prompt("asyn port")
       
 16021         interest(1)
       
 16022         special(SPC_MOD)
       
 16023         promptgroup("40 - Input")
       
 16024         size(40)
       
 16025         initial("")
       
 16026     }
       
 16027     field(ADDR, DBF_LONG) {
       
 16028         promptgroup("40 - Input")
       
 16029         interest(1)
       
 16030         special(SPC_MOD)
       
 16031         prompt("asyn address")
       
 16032         initial("0")
       
 16033     }
       
 16034     field(PCNCT, DBF_MENU) {
       
 16035         menu(asynCONNECT)
       
 16036         prompt("Port Connect/Disconnect")
       
 16037         interest(2)
       
 16038         special(SPC_MOD)
       
 16039     }
       
 16040     field(DRVINFO, DBF_STRING) {
       
 16041         promptgroup("40 - Input")
       
 16042         interest(2)
       
 16043         special(SPC_MOD)
       
 16044         prompt("Driver info string")
       
 16045         size(40)
       
 16046         initial("")
       
 16047     }
       
 16048     field(REASON, DBF_LONG) {
       
 16049         prompt("asynUser->reason")
       
 16050         interest(2)
       
 16051         special(SPC_MOD)
       
 16052     }
       
 16053     field(TMOD, DBF_MENU) {
       
 16054         prompt("Transaction mode")
       
 16055         interest(1)
       
 16056         promptgroup("40 - Input")
       
 16057         menu(asynTMOD)
       
 16058     }
       
 16059     field(TMOT, DBF_DOUBLE) {
       
 16060         initial("1.0")
       
 16061         prompt("Timeout (sec)")
       
 16062         promptgroup("40 - Input")
       
 16063         interest(1)
       
 16064     }
       
 16065     field(IFACE, DBF_MENU) {
       
 16066         menu(asynINTERFACE)
       
 16067         prompt("Interface")
       
 16068         special(SPC_MOD)
       
 16069         interest(2)
       
 16070         promptgroup("40 - Input")
       
 16071     }
       
 16072     field(OCTETIV, DBF_LONG) {
       
 16073         interest(2)
       
 16074         prompt("asynOctet is valid")
       
 16075     }
       
 16076     field(OPTIONIV, DBF_LONG) {
       
 16077         interest(2)
       
 16078         prompt("asynOption is valid")
       
 16079     }
       
 16080     field(GPIBIV, DBF_LONG) {
       
 16081         prompt("asynGPIB is valid")
       
 16082         interest(2)
       
 16083     }
       
 16084     field(I32IV, DBF_LONG) {
       
 16085         interest(2)
       
 16086         prompt("asynInt32 is valid")
       
 16087     }
       
 16088     field(UI32IV, DBF_LONG) {
       
 16089         interest(2)
       
 16090         prompt("asynUInt32Digital is valid")
       
 16091     }
       
 16092     field(F64IV, DBF_LONG) {
       
 16093         prompt("asynFloat64 is valid")
       
 16094         interest(2)
       
 16095     }
       
 16096     field(AOUT, DBF_STRING) {
       
 16097         size(40)
       
 16098         pp(TRUE)
       
 16099         interest(1)
       
 16100         promptgroup("50 - Output")
       
 16101         prompt("Output (command) string")
       
 16102     }
       
 16103     field(OEOS, DBF_STRING) {
       
 16104         promptgroup("50 - Output")
       
 16105         special(SPC_MOD)
       
 16106         interest(1)
       
 16107         prompt("Output delimiter")
       
 16108         size(40)
       
 16109     }
       
 16110     field(BOUT, DBF_CHAR) {
       
 16111         prompt("Output binary data")
       
 16112         interest(1)
       
 16113         special(SPC_DBADDR)
       
 16114         pp(TRUE)
       
 16115     }
       
 16116     field(OPTR, DBF_NOACCESS) {
       
 16117         extra("void *optr")
       
 16118         special(SPC_NOMOD)
       
 16119         interest(4)
       
 16120         prompt("Output buffer pointer")
       
 16121     }
       
 16122     field(OMAX, DBF_LONG) {
       
 16123         initial("80")
       
 16124         prompt("Max. size of output array")
       
 16125         interest(1)
       
 16126         special(SPC_NOMOD)
       
 16127         promptgroup("50 - Output")
       
 16128     }
       
 16129     field(NOWT, DBF_LONG) {
       
 16130         promptgroup("50 - Output")
       
 16131         interest(1)
       
 16132         prompt("Number of bytes to write")
       
 16133         initial("80")
       
 16134     }
       
 16135     field(NAWT, DBF_LONG) {
       
 16136         interest(1)
       
 16137         prompt("Number of bytes actually written")
       
 16138     }
       
 16139     field(OFMT, DBF_MENU) {
       
 16140         promptgroup("50 - Output")
       
 16141         interest(1)
       
 16142         prompt("Output format")
       
 16143         menu(asynFMT)
       
 16144     }
       
 16145     field(AINP, DBF_STRING) {
       
 16146         prompt("Input (response) string")
       
 16147         special(SPC_NOMOD)
       
 16148         interest(1)
       
 16149         size(40)
       
 16150     }
       
 16151     field(TINP, DBF_STRING) {
       
 16152         prompt("Translated input string")
       
 16153         special(SPC_NOMOD)
       
 16154         interest(1)
       
 16155         asl(ASL0)
       
 16156         size(40)
       
 16157     }
       
 16158     field(IEOS, DBF_STRING) {
       
 16159         prompt("Input Delimiter")
       
 16160         special(SPC_MOD)
       
 16161         interest(1)
       
 16162         promptgroup("40 - Input")
       
 16163         size(40)
       
 16164     }
       
 16165     field(BINP, DBF_CHAR) {
       
 16166         special(SPC_DBADDR)
       
 16167         prompt("Input binary data")
       
 16168         asl(ASL0)
       
 16169     }
       
 16170     field(IPTR, DBF_NOACCESS) {
       
 16171         interest(4)
       
 16172         special(SPC_NOMOD)
       
 16173         prompt("Input buffer pointer")
       
 16174         extra("void *iptr")
       
 16175         size(4)
       
 16176     }
       
 16177     field(IMAX, DBF_LONG) {
       
 16178         initial("80")
       
 16179         prompt("Max. size of input array")
       
 16180         interest(1)
       
 16181         promptgroup("40 - Input")
       
 16182         special(SPC_NOMOD)
       
 16183     }
       
 16184     field(NRRD, DBF_LONG) {
       
 16185         promptgroup("40 - Input")
       
 16186         interest(1)
       
 16187         prompt("Number of bytes to read")
       
 16188     }
       
 16189     field(NORD, DBF_LONG) {
       
 16190         interest(1)
       
 16191         special(SPC_NOMOD)
       
 16192         prompt("Number of bytes read")
       
 16193     }
       
 16194     field(IFMT, DBF_MENU) {
       
 16195         menu(asynFMT)
       
 16196         prompt("Input format")
       
 16197         interest(1)
       
 16198         promptgroup("40 - Input")
       
 16199     }
       
 16200     field(EOMR, DBF_MENU) {
       
 16201         menu(asynEOMREASON)
       
 16202         special(SPC_NOMOD)
       
 16203         interest(1)
       
 16204         prompt("EOM reason")
       
 16205     }
       
 16206     field(I32INP, DBF_LONG) {
       
 16207         prompt("asynInt32 input")
       
 16208         interest(2)
       
 16209         special(SPC_NOMOD)
       
 16210     }
       
 16211     field(I32OUT, DBF_LONG) {
       
 16212         pp(TRUE)
       
 16213         prompt("asynInt32 output")
       
 16214         promptgroup("50 - Output")
       
 16215         interest(2)
       
 16216     }
       
 16217     field(UI32INP, DBF_ULONG) {
       
 16218         special(SPC_NOMOD)
       
 16219         interest(2)
       
 16220         prompt("asynUInt32Digital input")
       
 16221     }
       
 16222     field(UI32OUT, DBF_ULONG) {
       
 16223         interest(2)
       
 16224         promptgroup("50 - Output")
       
 16225         prompt("asynUInt32Digital output")
       
 16226         pp(TRUE)
       
 16227     }
       
 16228     field(UI32MASK, DBF_ULONG) {
       
 16229         initial("0xffffffff")
       
 16230         prompt("asynUInt32Digital mask")
       
 16231         interest(2)
       
 16232         promptgroup("50 - Output")
       
 16233         special(SPC_MOD)
       
 16234     }
       
 16235     field(F64INP, DBF_DOUBLE) {
       
 16236         prompt("asynFloat64 input")
       
 16237         interest(2)
       
 16238         special(SPC_NOMOD)
       
 16239     }
       
 16240     field(F64OUT, DBF_DOUBLE) {
       
 16241         promptgroup("50 - Output")
       
 16242         interest(2)
       
 16243         prompt("asynFloat64 output")
       
 16244         pp(TRUE)
       
 16245     }
       
 16246     field(BAUD, DBF_MENU) {
       
 16247         menu(serialBAUD)
       
 16248         prompt("Baud rate")
       
 16249         promptgroup("40 - Input")
       
 16250         special(SPC_MOD)
       
 16251         interest(2)
       
 16252     }
       
 16253     field(LBAUD, DBF_LONG) {
       
 16254         special(SPC_MOD)
       
 16255         promptgroup("40 - Input")
       
 16256         interest(2)
       
 16257         prompt("Baud rate")
       
 16258     }
       
 16259     field(PRTY, DBF_MENU) {
       
 16260         menu(serialPRTY)
       
 16261         special(SPC_MOD)
       
 16262         promptgroup("40 - Input")
       
 16263         interest(2)
       
 16264         prompt("Parity")
       
 16265     }
       
 16266     field(DBIT, DBF_MENU) {
       
 16267         special(SPC_MOD)
       
 16268         promptgroup("40 - Input")
       
 16269         interest(2)
       
 16270         prompt("Data bits")
       
 16271         menu(serialDBIT)
       
 16272     }
       
 16273     field(SBIT, DBF_MENU) {
       
 16274         interest(2)
       
 16275         special(SPC_MOD)
       
 16276         promptgroup("40 - Input")
       
 16277         prompt("Stop bits")
       
 16278         menu(serialSBIT)
       
 16279     }
       
 16280     field(MCTL, DBF_MENU) {
       
 16281         interest(2)
       
 16282         special(SPC_MOD)
       
 16283         promptgroup("40 - Input")
       
 16284         prompt("Modem control")
       
 16285         menu(serialMCTL)
       
 16286     }
       
 16287     field(FCTL, DBF_MENU) {
       
 16288         prompt("Flow control")
       
 16289         special(SPC_MOD)
       
 16290         interest(2)
       
 16291         promptgroup("40 - Input")
       
 16292         menu(serialFCTL)
       
 16293     }
       
 16294     field(IXON, DBF_MENU) {
       
 16295         menu(serialIX)
       
 16296         promptgroup("40 - Input")
       
 16297         special(SPC_MOD)
       
 16298         interest(2)
       
 16299         prompt("Output XON/XOFF")
       
 16300     }
       
 16301     field(IXOFF, DBF_MENU) {
       
 16302         interest(2)
       
 16303         special(SPC_MOD)
       
 16304         promptgroup("40 - Input")
       
 16305         prompt("Input XON/XOFF")
       
 16306         menu(serialIX)
       
 16307     }
       
 16308     field(IXANY, DBF_MENU) {
       
 16309         menu(serialIX)
       
 16310         special(SPC_MOD)
       
 16311         interest(2)
       
 16312         promptgroup("40 - Input")
       
 16313         prompt("XON=any character")
       
 16314     }
       
 16315     field(HOSTINFO, DBF_STRING) {
       
 16316         prompt("host info")
       
 16317         promptgroup("40 - Input")
       
 16318         interest(1)
       
 16319         special(SPC_MOD)
       
 16320         initial("")
       
 16321         size(40)
       
 16322     }
       
 16323     field(DRTO, DBF_MENU) {
       
 16324         menu(ipDRTO)
       
 16325         promptgroup("40 - Input")
       
 16326         special(SPC_MOD)
       
 16327         interest(2)
       
 16328         prompt("Disconnect on timeout")
       
 16329     }
       
 16330     field(UCMD, DBF_MENU) {
       
 16331         pp(TRUE)
       
 16332         interest(2)
       
 16333         promptgroup("50 - Output")
       
 16334         prompt("Universal command")
       
 16335         menu(gpibUCMD)
       
 16336     }
       
 16337     field(ACMD, DBF_MENU) {
       
 16338         menu(gpibACMD)
       
 16339         prompt("Addressed command")
       
 16340         promptgroup("50 - Output")
       
 16341         interest(2)
       
 16342         pp(TRUE)
       
 16343     }
       
 16344     field(SPR, DBF_UCHAR) {
       
 16345         special(SPC_NOMOD)
       
 16346         interest(2)
       
 16347         prompt("Serial poll response")
       
 16348     }
       
 16349     field(TMSK, DBF_LONG) {
       
 16350         prompt("Trace mask")
       
 16351         interest(1)
       
 16352         promptgroup("80 - Display")
       
 16353         special(SPC_MOD)
       
 16354     }
       
 16355     field(TB0, DBF_MENU) {
       
 16356         interest(1)
       
 16357         special(SPC_MOD)
       
 16358         promptgroup("80 - Display")
       
 16359         prompt("Trace error")
       
 16360         menu(asynTRACE)
       
 16361     }
       
 16362     field(TB1, DBF_MENU) {
       
 16363         menu(asynTRACE)
       
 16364         prompt("Trace IO device")
       
 16365         special(SPC_MOD)
       
 16366         interest(1)
       
 16367         promptgroup("80 - Display")
       
 16368     }
       
 16369     field(TB2, DBF_MENU) {
       
 16370         special(SPC_MOD)
       
 16371         interest(1)
       
 16372         promptgroup("80 - Display")
       
 16373         prompt("Trace IO filter")
       
 16374         menu(asynTRACE)
       
 16375     }
       
 16376     field(TB3, DBF_MENU) {
       
 16377         special(SPC_MOD)
       
 16378         interest(1)
       
 16379         promptgroup("80 - Display")
       
 16380         prompt("Trace IO driver")
       
 16381         menu(asynTRACE)
       
 16382     }
       
 16383     field(TB4, DBF_MENU) {
       
 16384         menu(asynTRACE)
       
 16385         prompt("Trace flow")
       
 16386         interest(1)
       
 16387         special(SPC_MOD)
       
 16388         promptgroup("80 - Display")
       
 16389     }
       
 16390     field(TB5, DBF_MENU) {
       
 16391         interest(1)
       
 16392         special(SPC_MOD)
       
 16393         promptgroup("80 - Display")
       
 16394         prompt("Trace warning")
       
 16395         menu(asynTRACE)
       
 16396     }
       
 16397     field(TIOM, DBF_LONG) {
       
 16398         prompt("Trace I/O mask")
       
 16399         promptgroup("80 - Display")
       
 16400         interest(1)
       
 16401         special(SPC_MOD)
       
 16402     }
       
 16403     field(TIB0, DBF_MENU) {
       
 16404         menu(asynTRACE)
       
 16405         prompt("Trace IO ASCII")
       
 16406         promptgroup("80 - Display")
       
 16407         interest(1)
       
 16408         special(SPC_MOD)
       
 16409     }
       
 16410     field(TIB1, DBF_MENU) {
       
 16411         menu(asynTRACE)
       
 16412         special(SPC_MOD)
       
 16413         interest(1)
       
 16414         promptgroup("80 - Display")
       
 16415         prompt("Trace IO escape")
       
 16416     }
       
 16417     field(TIB2, DBF_MENU) {
       
 16418         interest(1)
       
 16419         promptgroup("80 - Display")
       
 16420         special(SPC_MOD)
       
 16421         prompt("Trace IO hex")
       
 16422         menu(asynTRACE)
       
 16423     }
       
 16424     field(TINM, DBF_LONG) {
       
 16425         prompt("Trace Info mask")
       
 16426         interest(1)
       
 16427         promptgroup("80 - Display")
       
 16428         special(SPC_MOD)
       
 16429     }
       
 16430     field(TINB0, DBF_MENU) {
       
 16431         menu(asynTRACE)
       
 16432         special(SPC_MOD)
       
 16433         interest(1)
       
 16434         promptgroup("80 - Display")
       
 16435         prompt("Trace Info Time")
       
 16436     }
       
 16437     field(TINB1, DBF_MENU) {
       
 16438         prompt("Trace Info Port")
       
 16439         promptgroup("80 - Display")
       
 16440         interest(1)
       
 16441         special(SPC_MOD)
       
 16442         menu(asynTRACE)
       
 16443     }
       
 16444     field(TINB2, DBF_MENU) {
       
 16445         menu(asynTRACE)
       
 16446         prompt("Trace Info Source")
       
 16447         interest(1)
       
 16448         special(SPC_MOD)
       
 16449         promptgroup("80 - Display")
       
 16450     }
       
 16451     field(TINB3, DBF_MENU) {
       
 16452         menu(asynTRACE)
       
 16453         prompt("Trace Info Thread")
       
 16454         promptgroup("80 - Display")
       
 16455         interest(1)
       
 16456         special(SPC_MOD)
       
 16457     }
       
 16458     field(TSIZ, DBF_LONG) {
       
 16459         prompt("Trace IO truncate size")
       
 16460         interest(1)
       
 16461         special(SPC_MOD)
       
 16462         promptgroup("80 - Display")
       
 16463     }
       
 16464     field(TFIL, DBF_STRING) {
       
 16465         prompt("Trace IO file")
       
 16466         interest(1)
       
 16467         promptgroup("80 - Display")
       
 16468         special(SPC_MOD)
       
 16469         size(40)
       
 16470     }
       
 16471     field(AUCT, DBF_MENU) {
       
 16472         menu(asynAUTOCONNECT)
       
 16473         prompt("Autoconnect")
       
 16474         special(SPC_MOD)
       
 16475         interest(1)
       
 16476         promptgroup("40 - Input")
       
 16477     }
       
 16478     field(CNCT, DBF_MENU) {
       
 16479         special(SPC_MOD)
       
 16480         interest(1)
       
 16481         promptgroup("40 - Input")
       
 16482         prompt("Connect/Disconnect")
       
 16483         menu(asynCONNECT)
       
 16484     }
       
 16485     field(ENBL, DBF_MENU) {
       
 16486         menu(asynENABLE)
       
 16487         interest(1)
       
 16488         promptgroup("40 - Input")
       
 16489         special(SPC_MOD)
       
 16490         prompt("Enable/Disable")
       
 16491     }
       
 16492     field(ERRS, DBF_NOACCESS) {
       
 16493         interest(4)
       
 16494         special(SPC_DBADDR)
       
 16495         prompt("Error string")
       
 16496         extra("char *errs")
       
 16497     }
       
 16498     field(AQR, DBF_UCHAR) {
       
 16499         interest(4)
       
 16500         special(SPC_MOD)
       
 16501         prompt("Abort queueRequest")
       
 16502     }
       
 16503 }
       
 16504 device(asyn, INST_IO, asynRecordDevice, "asynRecordDevice")
       
 16505 recordtype(aao) {
       
 16506     %#include "epicsTypes.h"
       
 16507     %#include "link.h"
       
 16508     %#include "epicsMutex.h"
       
 16509     %#include "ellLib.h"
       
 16510     %#include "epicsTime.h"
       
 16511     %#include "callback.h"
       
 16512     field(NAME, DBF_STRING) {
       
 16513         special(SPC_NOMOD)
       
 16514         prompt("Record Name")
       
 16515         size(61)
       
 16516     }
       
 16517     field(DESC, DBF_STRING) {
       
 16518         size(41)
       
 16519         promptgroup("10 - Common")
       
 16520         prompt("Descriptor")
       
 16521     }
       
 16522     field(ASG, DBF_STRING) {
       
 16523         size(29)
       
 16524         prompt("Access Security Group")
       
 16525         promptgroup("10 - Common")
       
 16526         special(SPC_AS)
       
 16527     }
       
 16528     field(SCAN, DBF_MENU) {
       
 16529         prompt("Scan Mechanism")
       
 16530         interest(1)
       
 16531         promptgroup("20 - Scan")
       
 16532         special(SPC_SCAN)
       
 16533         menu(menuScan)
       
 16534     }
       
 16535     field(PINI, DBF_MENU) {
       
 16536         menu(menuPini)
       
 16537         interest(1)
       
 16538         promptgroup("20 - Scan")
       
 16539         prompt("Process at iocInit")
       
 16540     }
       
 16541     field(PHAS, DBF_SHORT) {
       
 16542         interest(1)
       
 16543         promptgroup("20 - Scan")
       
 16544         special(SPC_SCAN)
       
 16545         prompt("Scan Phase")
       
 16546     }
       
 16547     field(EVNT, DBF_STRING) {
       
 16548         prompt("Event Name")
       
 16549         interest(1)
       
 16550         promptgroup("20 - Scan")
       
 16551         special(SPC_SCAN)
       
 16552         size(40)
       
 16553     }
       
 16554     field(TSE, DBF_SHORT) {
       
 16555         prompt("Time Stamp Event")
       
 16556         promptgroup("20 - Scan")
       
 16557         interest(1)
       
 16558     }
       
 16559     field(TSEL, DBF_INLINK) {
       
 16560         prompt("Time Stamp Link")
       
 16561         promptgroup("20 - Scan")
       
 16562         interest(1)
       
 16563     }
       
 16564     field(DTYP, DBF_DEVICE) {
       
 16565         interest(1)
       
 16566         promptgroup("10 - Common")
       
 16567         prompt("Device Type")
       
 16568     }
       
 16569     field(DISV, DBF_SHORT) {
       
 16570         initial("1")
       
 16571         prompt("Disable Value")
       
 16572         promptgroup("20 - Scan")
       
 16573     }
       
 16574     field(DISA, DBF_SHORT) {
       
 16575         prompt("Disable")
       
 16576     }
       
 16577     field(SDIS, DBF_INLINK) {
       
 16578         prompt("Scanning Disable")
       
 16579         interest(1)
       
 16580         promptgroup("20 - Scan")
       
 16581     }
       
 16582     field(MLOK, DBF_NOACCESS) {
       
 16583         extra("epicsMutexId        mlok")
       
 16584         interest(4)
       
 16585         special(SPC_NOMOD)
       
 16586         prompt("Monitor lock")
       
 16587     }
       
 16588     field(MLIS, DBF_NOACCESS) {
       
 16589         special(SPC_NOMOD)
       
 16590         interest(4)
       
 16591         prompt("Monitor List")
       
 16592         extra("ELLLIST             mlis")
       
 16593     }
       
 16594     field(BKLNK, DBF_NOACCESS) {
       
 16595         prompt("Backwards link tracking")
       
 16596         interest(4)
       
 16597         special(SPC_NOMOD)
       
 16598         extra("ELLLIST             bklnk")
       
 16599     }
       
 16600     field(DISP, DBF_UCHAR) {
       
 16601         prompt("Disable putField")
       
 16602     }
       
 16603     field(PROC, DBF_UCHAR) {
       
 16604         prompt("Force Processing")
       
 16605         interest(3)
       
 16606         pp(TRUE)
       
 16607     }
       
 16608     field(STAT, DBF_MENU) {
       
 16609         menu(menuAlarmStat)
       
 16610         special(SPC_NOMOD)
       
 16611         prompt("Alarm Status")
       
 16612         initial("UDF")
       
 16613     }
       
 16614     field(SEVR, DBF_MENU) {
       
 16615         menu(menuAlarmSevr)
       
 16616         prompt("Alarm Severity")
       
 16617         special(SPC_NOMOD)
       
 16618     }
       
 16619     field(NSTA, DBF_MENU) {
       
 16620         menu(menuAlarmStat)
       
 16621         interest(2)
       
 16622         special(SPC_NOMOD)
       
 16623         prompt("New Alarm Status")
       
 16624     }
       
 16625     field(NSEV, DBF_MENU) {
       
 16626         prompt("New Alarm Severity")
       
 16627         interest(2)
       
 16628         special(SPC_NOMOD)
       
 16629         menu(menuAlarmSevr)
       
 16630     }
       
 16631     field(ACKS, DBF_MENU) {
       
 16632         special(SPC_NOMOD)
       
 16633         interest(2)
       
 16634         prompt("Alarm Ack Severity")
       
 16635         menu(menuAlarmSevr)
       
 16636     }
       
 16637     field(ACKT, DBF_MENU) {
       
 16638         initial("YES")
       
 16639         menu(menuYesNo)
       
 16640         prompt("Alarm Ack Transient")
       
 16641         promptgroup("70 - Alarm")
       
 16642         interest(2)
       
 16643         special(SPC_NOMOD)
       
 16644     }
       
 16645     field(DISS, DBF_MENU) {
       
 16646         menu(menuAlarmSevr)
       
 16647         promptgroup("70 - Alarm")
       
 16648         interest(1)
       
 16649         prompt("Disable Alarm Sevrty")
       
 16650     }
       
 16651     field(LCNT, DBF_UCHAR) {
       
 16652         prompt("Lock Count")
       
 16653         special(SPC_NOMOD)
       
 16654         interest(2)
       
 16655     }
       
 16656     field(PACT, DBF_UCHAR) {
       
 16657         prompt("Record active")
       
 16658         interest(1)
       
 16659         special(SPC_NOMOD)
       
 16660     }
       
 16661     field(PUTF, DBF_UCHAR) {
       
 16662         prompt("dbPutField process")
       
 16663         interest(1)
       
 16664         special(SPC_NOMOD)
       
 16665     }
       
 16666     field(RPRO, DBF_UCHAR) {
       
 16667         prompt("Reprocess ")
       
 16668         interest(1)
       
 16669         special(SPC_NOMOD)
       
 16670     }
       
 16671     field(ASP, DBF_NOACCESS) {
       
 16672         extra("struct asgMember    *asp")
       
 16673         special(SPC_NOMOD)
       
 16674         interest(4)
       
 16675         prompt("Access Security Pvt")
       
 16676     }
       
 16677     field(PPN, DBF_NOACCESS) {
       
 16678         extra("struct processNotify *ppn")
       
 16679         prompt("pprocessNotify")
       
 16680         special(SPC_NOMOD)
       
 16681         interest(4)
       
 16682     }
       
 16683     field(PPNR, DBF_NOACCESS) {
       
 16684         prompt("pprocessNotifyRecord")
       
 16685         special(SPC_NOMOD)
       
 16686         interest(4)
       
 16687         extra("struct processNotifyRecord *ppnr")
       
 16688     }
       
 16689     field(SPVT, DBF_NOACCESS) {
       
 16690         prompt("Scan Private")
       
 16691         special(SPC_NOMOD)
       
 16692         interest(4)
       
 16693         extra("struct scan_element *spvt")
       
 16694     }
       
 16695     field(RSET, DBF_NOACCESS) {
       
 16696         extra("struct typed_rset   *rset")
       
 16697         special(SPC_NOMOD)
       
 16698         interest(4)
       
 16699         prompt("Address of RSET")
       
 16700     }
       
 16701     field(DSET, DBF_NOACCESS) {
       
 16702         extra("struct dset         *dset")
       
 16703         special(SPC_NOMOD)
       
 16704         interest(4)
       
 16705         prompt("DSET address")
       
 16706     }
       
 16707     field(DPVT, DBF_NOACCESS) {
       
 16708         extra("void                *dpvt")
       
 16709         prompt("Device Private")
       
 16710         interest(4)
       
 16711         special(SPC_NOMOD)
       
 16712     }
       
 16713     field(RDES, DBF_NOACCESS) {
       
 16714         extra("struct dbRecordType *rdes")
       
 16715         special(SPC_NOMOD)
       
 16716         interest(4)
       
 16717         prompt("Address of dbRecordType")
       
 16718     }
       
 16719     field(LSET, DBF_NOACCESS) {
       
 16720         extra("struct lockRecord   *lset")
       
 16721         special(SPC_NOMOD)
       
 16722         interest(4)
       
 16723         prompt("Lock Set")
       
 16724     }
       
 16725     field(PRIO, DBF_MENU) {
       
 16726         menu(menuPriority)
       
 16727         prompt("Scheduling Priority")
       
 16728         interest(1)
       
 16729         special(SPC_SCAN)
       
 16730         promptgroup("20 - Scan")
       
 16731     }
       
 16732     field(TPRO, DBF_UCHAR) {
       
 16733         prompt("Trace Processing")
       
 16734     }
       
 16735     field(BKPT, DBF_NOACCESS) {
       
 16736         interest(1)
       
 16737         special(SPC_NOMOD)
       
 16738         prompt("Break Point")
       
 16739         extra("char                bkpt")
       
 16740     }
       
 16741     field(UDF, DBF_UCHAR) {
       
 16742         promptgroup("10 - Common")
       
 16743         interest(1)
       
 16744         prompt("Undefined")
       
 16745         pp(TRUE)
       
 16746         initial("1")
       
 16747     }
       
 16748     field(UDFS, DBF_MENU) {
       
 16749         initial("INVALID")
       
 16750         menu(menuAlarmSevr)
       
 16751         interest(1)
       
 16752         promptgroup("70 - Alarm")
       
 16753         prompt("Undefined Alarm Sevrty")
       
 16754     }
       
 16755     field(TIME, DBF_NOACCESS) {
       
 16756         prompt("Time")
       
 16757         interest(2)
       
 16758         special(SPC_NOMOD)
       
 16759         extra("epicsTimeStamp      time")
       
 16760     }
       
 16761     field(FLNK, DBF_FWDLINK) {
       
 16762         interest(1)
       
 16763         promptgroup("20 - Scan")
       
 16764         prompt("Forward Process Link")
       
 16765     }
       
 16766     field(VAL, DBF_NOACCESS) {
       
 16767         asl(ASL0)
       
 16768         prompt("Value")
       
 16769         special(SPC_DBADDR)
       
 16770         pp(TRUE)
       
 16771         extra("void *		val")
       
 16772     }
       
 16773     field(PREC, DBF_SHORT) {
       
 16774         prompt("Display Precision")
       
 16775         promptgroup("80 - Display")
       
 16776         prop(YES)
       
 16777         interest(1)
       
 16778     }
       
 16779     field(OUT, DBF_OUTLINK) {
       
 16780         promptgroup("50 - Output")
       
 16781         interest(1)
       
 16782         prompt("Output Specification")
       
 16783     }
       
 16784     field(EGU, DBF_STRING) {
       
 16785         size(16)
       
 16786         prompt("Engineering Units")
       
 16787         prop(YES)
       
 16788         interest(1)
       
 16789         promptgroup("80 - Display")
       
 16790     }
       
 16791     field(HOPR, DBF_DOUBLE) {
       
 16792         prompt("High Operating Range")
       
 16793         interest(1)
       
 16794         prop(YES)
       
 16795         promptgroup("80 - Display")
       
 16796     }
       
 16797     field(LOPR, DBF_DOUBLE) {
       
 16798         prop(YES)
       
 16799         promptgroup("80 - Display")
       
 16800         interest(1)
       
 16801         prompt("Low Operating Range")
       
 16802     }
       
 16803     field(NELM, DBF_ULONG) {
       
 16804         initial("1")
       
 16805         prompt("Number of Elements")
       
 16806         interest(1)
       
 16807         special(SPC_NOMOD)
       
 16808         promptgroup("30 - Action")
       
 16809     }
       
 16810     field(FTVL, DBF_MENU) {
       
 16811         prompt("Field Type of Value")
       
 16812         interest(1)
       
 16813         special(SPC_NOMOD)
       
 16814         promptgroup("30 - Action")
       
 16815         menu(menuFtype)
       
 16816     }
       
 16817     field(NORD, DBF_ULONG) {
       
 16818         special(SPC_NOMOD)
       
 16819         prompt("Number elements read")
       
 16820     }
       
 16821     field(BPTR, DBF_NOACCESS) {
       
 16822         interest(4)
       
 16823         special(SPC_NOMOD)
       
 16824         prompt("Buffer Pointer")
       
 16825         extra("void *		bptr")
       
 16826     }
       
 16827     field(SIML, DBF_INLINK) {
       
 16828         prompt("Simulation Mode Link")
       
 16829         interest(1)
       
 16830         promptgroup("90 - Simulate")
       
 16831     }
       
 16832     field(SIMM, DBF_MENU) {
       
 16833         prompt("Simulation Mode")
       
 16834         special(SPC_MOD)
       
 16835         interest(1)
       
 16836         menu(menuYesNo)
       
 16837     }
       
 16838     field(SIMS, DBF_MENU) {
       
 16839         menu(menuAlarmSevr)
       
 16840         interest(2)
       
 16841         promptgroup("90 - Simulate")
       
 16842         prompt("Simulation Mode Severity")
       
 16843     }
       
 16844     field(SIOL, DBF_OUTLINK) {
       
 16845         interest(1)
       
 16846         promptgroup("90 - Simulate")
       
 16847         prompt("Simulation Output Link")
       
 16848     }
       
 16849     field(OLDSIMM, DBF_MENU) {
       
 16850         interest(4)
       
 16851         special(SPC_NOMOD)
       
 16852         prompt("Prev. Simulation Mode")
       
 16853         menu(menuSimm)
       
 16854     }
       
 16855     field(SSCN, DBF_MENU) {
       
 16856         interest(1)
       
 16857         promptgroup("90 - Simulate")
       
 16858         prompt("Sim. Mode Scan")
       
 16859         menu(menuScan)
       
 16860         initial("65535")
       
 16861     }
       
 16862     field(SDLY, DBF_DOUBLE) {
       
 16863         initial("-1.0")
       
 16864         prompt("Sim. Mode Async Delay")
       
 16865         interest(2)
       
 16866         promptgroup("90 - Simulate")
       
 16867     }
       
 16868     field(SIMPVT, DBF_NOACCESS) {
       
 16869         extra("CALLBACK            *simpvt")
       
 16870         prompt("Sim. Mode Private")
       
 16871         special(SPC_NOMOD)
       
 16872         interest(4)
       
 16873     }
       
 16874     field(MPST, DBF_MENU) {
       
 16875         menu(aaoPOST)
       
 16876         interest(1)
       
 16877         promptgroup("80 - Display")
       
 16878         prompt("Post Value Monitors")
       
 16879     }
       
 16880     field(APST, DBF_MENU) {
       
 16881         interest(1)
       
 16882         promptgroup("80 - Display")
       
 16883         prompt("Post Archive Monitors")
       
 16884         menu(aaoPOST)
       
 16885     }
       
 16886     field(HASH, DBF_ULONG) {
       
 16887         interest(3)
       
 16888         prompt("Hash of OnChange data.")
       
 16889     }
       
 16890 }
       
 16891 device(aao, CONSTANT, devAaoSoft, "Soft Channel")
       
 16892 device(aao, INST_IO, devaaoStream, "stream")
       
 16893 recordtype(bi) {
       
 16894     %#include "epicsTypes.h"
       
 16895     %#include "link.h"
       
 16896     %#include "epicsMutex.h"
       
 16897     %#include "ellLib.h"
       
 16898     %#include "epicsTime.h"
       
 16899     %#include "callback.h"
       
 16900     field(NAME, DBF_STRING) {
       
 16901         size(61)
       
 16902         prompt("Record Name")
       
 16903         special(SPC_NOMOD)
       
 16904     }
       
 16905     field(DESC, DBF_STRING) {
       
 16906         size(41)
       
 16907         promptgroup("10 - Common")
       
 16908         prompt("Descriptor")
       
 16909     }
       
 16910     field(ASG, DBF_STRING) {
       
 16911         promptgroup("10 - Common")
       
 16912         special(SPC_AS)
       
 16913         prompt("Access Security Group")
       
 16914         size(29)
       
 16915     }
       
 16916     field(SCAN, DBF_MENU) {
       
 16917         menu(menuScan)
       
 16918         prompt("Scan Mechanism")
       
 16919         special(SPC_SCAN)
       
 16920         interest(1)
       
 16921         promptgroup("20 - Scan")
       
 16922     }
       
 16923     field(PINI, DBF_MENU) {
       
 16924         menu(menuPini)
       
 16925         promptgroup("20 - Scan")
       
 16926         interest(1)
       
 16927         prompt("Process at iocInit")
       
 16928     }
       
 16929     field(PHAS, DBF_SHORT) {
       
 16930         prompt("Scan Phase")
       
 16931         promptgroup("20 - Scan")
       
 16932         interest(1)
       
 16933         special(SPC_SCAN)
       
 16934     }
       
 16935     field(EVNT, DBF_STRING) {
       
 16936         size(40)
       
 16937         promptgroup("20 - Scan")
       
 16938         interest(1)
       
 16939         special(SPC_SCAN)
       
 16940         prompt("Event Name")
       
 16941     }
       
 16942     field(TSE, DBF_SHORT) {
       
 16943         prompt("Time Stamp Event")
       
 16944         interest(1)
       
 16945         promptgroup("20 - Scan")
       
 16946     }
       
 16947     field(TSEL, DBF_INLINK) {
       
 16948         prompt("Time Stamp Link")
       
 16949         interest(1)
       
 16950         promptgroup("20 - Scan")
       
 16951     }
       
 16952     field(DTYP, DBF_DEVICE) {
       
 16953         prompt("Device Type")
       
 16954         promptgroup("10 - Common")
       
 16955         interest(1)
       
 16956     }
       
 16957     field(DISV, DBF_SHORT) {
       
 16958         promptgroup("20 - Scan")
       
 16959         prompt("Disable Value")
       
 16960         initial("1")
       
 16961     }
       
 16962     field(DISA, DBF_SHORT) {
       
 16963         prompt("Disable")
       
 16964     }
       
 16965     field(SDIS, DBF_INLINK) {
       
 16966         prompt("Scanning Disable")
       
 16967         interest(1)
       
 16968         promptgroup("20 - Scan")
       
 16969     }
       
 16970     field(MLOK, DBF_NOACCESS) {
       
 16971         interest(4)
       
 16972         special(SPC_NOMOD)
       
 16973         prompt("Monitor lock")
       
 16974         extra("epicsMutexId        mlok")
       
 16975     }
       
 16976     field(MLIS, DBF_NOACCESS) {
       
 16977         prompt("Monitor List")
       
 16978         interest(4)
       
 16979         special(SPC_NOMOD)
       
 16980         extra("ELLLIST             mlis")
       
 16981     }
       
 16982     field(BKLNK, DBF_NOACCESS) {
       
 16983         extra("ELLLIST             bklnk")
       
 16984         prompt("Backwards link tracking")
       
 16985         interest(4)
       
 16986         special(SPC_NOMOD)
       
 16987     }
       
 16988     field(DISP, DBF_UCHAR) {
       
 16989         prompt("Disable putField")
       
 16990     }
       
 16991     field(PROC, DBF_UCHAR) {
       
 16992         interest(3)
       
 16993         prompt("Force Processing")
       
 16994         pp(TRUE)
       
 16995     }
       
 16996     field(STAT, DBF_MENU) {
       
 16997         initial("UDF")
       
 16998         menu(menuAlarmStat)
       
 16999         prompt("Alarm Status")
       
 17000         special(SPC_NOMOD)
       
 17001     }
       
 17002     field(SEVR, DBF_MENU) {
       
 17003         special(SPC_NOMOD)
       
 17004         prompt("Alarm Severity")
       
 17005         menu(menuAlarmSevr)
       
 17006     }
       
 17007     field(NSTA, DBF_MENU) {
       
 17008         menu(menuAlarmStat)
       
 17009         special(SPC_NOMOD)
       
 17010         interest(2)
       
 17011         prompt("New Alarm Status")
       
 17012     }
       
 17013     field(NSEV, DBF_MENU) {
       
 17014         menu(menuAlarmSevr)
       
 17015         interest(2)
       
 17016         special(SPC_NOMOD)
       
 17017         prompt("New Alarm Severity")
       
 17018     }
       
 17019     field(ACKS, DBF_MENU) {
       
 17020         menu(menuAlarmSevr)
       
 17021         special(SPC_NOMOD)
       
 17022         interest(2)
       
 17023         prompt("Alarm Ack Severity")
       
 17024     }
       
 17025     field(ACKT, DBF_MENU) {
       
 17026         interest(2)
       
 17027         promptgroup("70 - Alarm")
       
 17028         special(SPC_NOMOD)
       
 17029         prompt("Alarm Ack Transient")
       
 17030         menu(menuYesNo)
       
 17031         initial("YES")
       
 17032     }
       
 17033     field(DISS, DBF_MENU) {
       
 17034         menu(menuAlarmSevr)
       
 17035         prompt("Disable Alarm Sevrty")
       
 17036         promptgroup("70 - Alarm")
       
 17037         interest(1)
       
 17038     }
       
 17039     field(LCNT, DBF_UCHAR) {
       
 17040         prompt("Lock Count")
       
 17041         special(SPC_NOMOD)
       
 17042         interest(2)
       
 17043     }
       
 17044     field(PACT, DBF_UCHAR) {
       
 17045         prompt("Record active")
       
 17046         interest(1)
       
 17047         special(SPC_NOMOD)
       
 17048     }
       
 17049     field(PUTF, DBF_UCHAR) {
       
 17050         prompt("dbPutField process")
       
 17051         special(SPC_NOMOD)
       
 17052         interest(1)
       
 17053     }
       
 17054     field(RPRO, DBF_UCHAR) {
       
 17055         prompt("Reprocess ")
       
 17056         interest(1)
       
 17057         special(SPC_NOMOD)
       
 17058     }
       
 17059     field(ASP, DBF_NOACCESS) {
       
 17060         extra("struct asgMember    *asp")
       
 17061         interest(4)
       
 17062         special(SPC_NOMOD)
       
 17063         prompt("Access Security Pvt")
       
 17064     }
       
 17065     field(PPN, DBF_NOACCESS) {
       
 17066         special(SPC_NOMOD)
       
 17067         interest(4)
       
 17068         prompt("pprocessNotify")
       
 17069         extra("struct processNotify *ppn")
       
 17070     }
       
 17071     field(PPNR, DBF_NOACCESS) {
       
 17072         prompt("pprocessNotifyRecord")
       
 17073         special(SPC_NOMOD)
       
 17074         interest(4)
       
 17075         extra("struct processNotifyRecord *ppnr")
       
 17076     }
       
 17077     field(SPVT, DBF_NOACCESS) {
       
 17078         prompt("Scan Private")
       
 17079         special(SPC_NOMOD)
       
 17080         interest(4)
       
 17081         extra("struct scan_element *spvt")
       
 17082     }
       
 17083     field(RSET, DBF_NOACCESS) {
       
 17084         interest(4)
       
 17085         special(SPC_NOMOD)
       
 17086         prompt("Address of RSET")
       
 17087         extra("struct typed_rset   *rset")
       
 17088     }
       
 17089     field(DSET, DBF_NOACCESS) {
       
 17090         prompt("DSET address")
       
 17091         interest(4)
       
 17092         special(SPC_NOMOD)
       
 17093         extra("struct dset         *dset")
       
 17094     }
       
 17095     field(DPVT, DBF_NOACCESS) {
       
 17096         prompt("Device Private")
       
 17097         interest(4)
       
 17098         special(SPC_NOMOD)
       
 17099         extra("void                *dpvt")
       
 17100     }
       
 17101     field(RDES, DBF_NOACCESS) {
       
 17102         extra("struct dbRecordType *rdes")
       
 17103         prompt("Address of dbRecordType")
       
 17104         interest(4)
       
 17105         special(SPC_NOMOD)
       
 17106     }
       
 17107     field(LSET, DBF_NOACCESS) {
       
 17108         prompt("Lock Set")
       
 17109         special(SPC_NOMOD)
       
 17110         interest(4)
       
 17111         extra("struct lockRecord   *lset")
       
 17112     }
       
 17113     field(PRIO, DBF_MENU) {
       
 17114         menu(menuPriority)
       
 17115         prompt("Scheduling Priority")
       
 17116         interest(1)
       
 17117         promptgroup("20 - Scan")
       
 17118         special(SPC_SCAN)
       
 17119     }
       
 17120     field(TPRO, DBF_UCHAR) {
       
 17121         prompt("Trace Processing")
       
 17122     }
       
 17123     field(BKPT, DBF_NOACCESS) {
       
 17124         prompt("Break Point")
       
 17125         interest(1)
       
 17126         special(SPC_NOMOD)
       
 17127         extra("char                bkpt")
       
 17128     }
       
 17129     field(UDF, DBF_UCHAR) {
       
 17130         initial("1")
       
 17131         pp(TRUE)
       
 17132         promptgroup("10 - Common")
       
 17133         interest(1)
       
 17134         prompt("Undefined")
       
 17135     }
       
 17136     field(UDFS, DBF_MENU) {
       
 17137         initial("INVALID")
       
 17138         menu(menuAlarmSevr)
       
 17139         prompt("Undefined Alarm Sevrty")
       
 17140         promptgroup("70 - Alarm")
       
 17141         interest(1)
       
 17142     }
       
 17143     field(TIME, DBF_NOACCESS) {
       
 17144         prompt("Time")
       
 17145         interest(2)
       
 17146         special(SPC_NOMOD)
       
 17147         extra("epicsTimeStamp      time")
       
 17148     }
       
 17149     field(FLNK, DBF_FWDLINK) {
       
 17150         prompt("Forward Process Link")
       
 17151         interest(1)
       
 17152         promptgroup("20 - Scan")
       
 17153     }
       
 17154     field(INP, DBF_INLINK) {
       
 17155         prompt("Input Specification")
       
 17156         promptgroup("40 - Input")
       
 17157         interest(1)
       
 17158     }
       
 17159     field(VAL, DBF_ENUM) {
       
 17160         asl(ASL0)
       
 17161         prompt("Current Value")
       
 17162         promptgroup("40 - Input")
       
 17163         pp(TRUE)
       
 17164     }
       
 17165     field(ZSV, DBF_MENU) {
       
 17166         pp(TRUE)
       
 17167         menu(menuAlarmSevr)
       
 17168         prompt("Zero Error Severity")
       
 17169         promptgroup("70 - Alarm")
       
 17170         interest(1)
       
 17171     }
       
 17172     field(OSV, DBF_MENU) {
       
 17173         pp(TRUE)
       
 17174         promptgroup("70 - Alarm")
       
 17175         interest(1)
       
 17176         prompt("One Error Severity")
       
 17177         menu(menuAlarmSevr)
       
 17178     }
       
 17179     field(COSV, DBF_MENU) {
       
 17180         pp(TRUE)
       
 17181         menu(menuAlarmSevr)
       
 17182         promptgroup("70 - Alarm")
       
 17183         interest(1)
       
 17184         prompt("Change of State Svr")
       
 17185     }
       
 17186     field(ZNAM, DBF_STRING) {
       
 17187         prompt("Zero Name")
       
 17188         prop(YES)
       
 17189         interest(1)
       
 17190         promptgroup("80 - Display")
       
 17191         pp(TRUE)
       
 17192         size(26)
       
 17193     }
       
 17194     field(ONAM, DBF_STRING) {
       
 17195         pp(TRUE)
       
 17196         size(26)
       
 17197         prop(YES)
       
 17198         promptgroup("80 - Display")
       
 17199         interest(1)
       
 17200         prompt("One Name")
       
 17201     }
       
 17202     field(RVAL, DBF_ULONG) {
       
 17203         pp(TRUE)
       
 17204         prompt("Raw Value")
       
 17205     }
       
 17206     field(ORAW, DBF_ULONG) {
       
 17207         special(SPC_NOMOD)
       
 17208         interest(3)
       
 17209         prompt("prev Raw Value")
       
 17210     }
       
 17211     field(MASK, DBF_ULONG) {
       
 17212         interest(1)
       
 17213         special(SPC_NOMOD)
       
 17214         prompt("Hardware Mask")
       
 17215     }
       
 17216     field(LALM, DBF_USHORT) {
       
 17217         special(SPC_NOMOD)
       
 17218         interest(3)
       
 17219         prompt("Last Value Alarmed")
       
 17220     }
       
 17221     field(MLST, DBF_USHORT) {
       
 17222         prompt("Last Value Monitored")
       
 17223         interest(3)
       
 17224         special(SPC_NOMOD)
       
 17225     }
       
 17226     field(SIOL, DBF_INLINK) {
       
 17227         promptgroup("90 - Simulate")
       
 17228         interest(1)
       
 17229         prompt("Simulation Input Link")
       
 17230     }
       
 17231     field(SVAL, DBF_ULONG) {
       
 17232         prompt("Simulation Value")
       
 17233     }
       
 17234     field(SIML, DBF_INLINK) {
       
 17235         promptgroup("90 - Simulate")
       
 17236         interest(1)
       
 17237         prompt("Simulation Mode Link")
       
 17238     }
       
 17239     field(SIMM, DBF_MENU) {
       
 17240         menu(menuSimm)
       
 17241         prompt("Simulation Mode")
       
 17242         special(SPC_MOD)
       
 17243         interest(1)
       
 17244     }
       
 17245     field(SIMS, DBF_MENU) {
       
 17246         menu(menuAlarmSevr)
       
 17247         prompt("Simulation Mode Severity")
       
 17248         interest(2)
       
 17249         promptgroup("90 - Simulate")
       
 17250     }
       
 17251     field(OLDSIMM, DBF_MENU) {
       
 17252         prompt("Prev. Simulation Mode")
       
 17253         interest(4)
       
 17254         special(SPC_NOMOD)
       
 17255         menu(menuSimm)
       
 17256     }
       
 17257     field(SSCN, DBF_MENU) {
       
 17258         prompt("Sim. Mode Scan")
       
 17259         promptgroup("90 - Simulate")
       
 17260         interest(1)
       
 17261         menu(menuScan)
       
 17262         initial("65535")
       
 17263     }
       
 17264     field(SDLY, DBF_DOUBLE) {
       
 17265         promptgroup("90 - Simulate")
       
 17266         interest(2)
       
 17267         prompt("Sim. Mode Async Delay")
       
 17268         initial("-1.0")
       
 17269     }
       
 17270     field(SIMPVT, DBF_NOACCESS) {
       
 17271         special(SPC_NOMOD)
       
 17272         interest(4)
       
 17273         prompt("Sim. Mode Private")
       
 17274         extra("CALLBACK            *simpvt")
       
 17275     }
       
 17276 }
       
 17277 device(bi, CONSTANT, devBiSoft, "Soft Channel")
       
 17278 device(bi, CONSTANT, devBiSoftRaw, "Raw Soft Channel")
       
 17279 device(bi, CONSTANT, devBiSoftCallback, "Async Soft Channel")
       
 17280 device(bi, INST_IO, devBiDbState, "Db State")
       
 17281 device(bi, INST_IO, asynBiInt32, "asynInt32")
       
 17282 device(bi, INST_IO, asynBiUInt32Digital, "asynUInt32Digital")
       
 17283 device(bi, INST_IO, devbiStream, "stream")
       
 17284 device(bi, INST_IO, devBiStrParm, "asyn bi stringParm")
       
 17285 device(bi, INST_IO, devBiMPC, "asyn MPC")
       
 17286 device(bi, GPIB_IO, devBiGP307Gpib, "Vg307 GPIB Instrument")
       
 17287 device(bi, INST_IO, devBiTelevac, "asyn Televac")
       
 17288 device(bi, INST_IO, devBiTPG261, "asyn TPG261")
       
 17289 recordtype(sub) {
       
 17290     %#include "epicsTypes.h"
       
 17291     %#include "link.h"
       
 17292     %#include "epicsMutex.h"
       
 17293     %#include "ellLib.h"
       
 17294     %#include "epicsTime.h"
       
 17295     %struct subRecord;
       
 17296     %typedef long (*SUBFUNCPTR)(struct subRecord *);
       
 17297     field(NAME, DBF_STRING) {
       
 17298         size(61)
       
 17299         prompt("Record Name")
       
 17300         special(SPC_NOMOD)
       
 17301     }
       
 17302     field(DESC, DBF_STRING) {
       
 17303         size(41)
       
 17304         promptgroup("10 - Common")
       
 17305         prompt("Descriptor")
       
 17306     }
       
 17307     field(ASG, DBF_STRING) {
       
 17308         promptgroup("10 - Common")
       
 17309         special(SPC_AS)
       
 17310         prompt("Access Security Group")
       
 17311         size(29)
       
 17312     }
       
 17313     field(SCAN, DBF_MENU) {
       
 17314         special(SPC_SCAN)
       
 17315         interest(1)
       
 17316         promptgroup("20 - Scan")
       
 17317         prompt("Scan Mechanism")
       
 17318         menu(menuScan)
       
 17319     }
       
 17320     field(PINI, DBF_MENU) {
       
 17321         menu(menuPini)
       
 17322         prompt("Process at iocInit")
       
 17323         interest(1)
       
 17324         promptgroup("20 - Scan")
       
 17325     }
       
 17326     field(PHAS, DBF_SHORT) {
       
 17327         prompt("Scan Phase")
       
 17328         interest(1)
       
 17329         special(SPC_SCAN)
       
 17330         promptgroup("20 - Scan")
       
 17331     }
       
 17332     field(EVNT, DBF_STRING) {
       
 17333         size(40)
       
 17334         prompt("Event Name")
       
 17335         interest(1)
       
 17336         special(SPC_SCAN)
       
 17337         promptgroup("20 - Scan")
       
 17338     }
       
 17339     field(TSE, DBF_SHORT) {
       
 17340         promptgroup("20 - Scan")
       
 17341         interest(1)
       
 17342         prompt("Time Stamp Event")
       
 17343     }
       
 17344     field(TSEL, DBF_INLINK) {
       
 17345         prompt("Time Stamp Link")
       
 17346         interest(1)
       
 17347         promptgroup("20 - Scan")
       
 17348     }
       
 17349     field(DTYP, DBF_DEVICE) {
       
 17350         prompt("Device Type")
       
 17351         interest(1)
       
 17352         promptgroup("10 - Common")
       
 17353     }
       
 17354     field(DISV, DBF_SHORT) {
       
 17355         initial("1")
       
 17356         promptgroup("20 - Scan")
       
 17357         prompt("Disable Value")
       
 17358     }
       
 17359     field(DISA, DBF_SHORT) {
       
 17360         prompt("Disable")
       
 17361     }
       
 17362     field(SDIS, DBF_INLINK) {
       
 17363         interest(1)
       
 17364         promptgroup("20 - Scan")
       
 17365         prompt("Scanning Disable")
       
 17366     }
       
 17367     field(MLOK, DBF_NOACCESS) {
       
 17368         interest(4)
       
 17369         special(SPC_NOMOD)
       
 17370         prompt("Monitor lock")
       
 17371         extra("epicsMutexId        mlok")
       
 17372     }
       
 17373     field(MLIS, DBF_NOACCESS) {
       
 17374         extra("ELLLIST             mlis")
       
 17375         prompt("Monitor List")
       
 17376         special(SPC_NOMOD)
       
 17377         interest(4)
       
 17378     }
       
 17379     field(BKLNK, DBF_NOACCESS) {
       
 17380         special(SPC_NOMOD)
       
 17381         interest(4)
       
 17382         prompt("Backwards link tracking")
       
 17383         extra("ELLLIST             bklnk")
       
 17384     }
       
 17385     field(DISP, DBF_UCHAR) {
       
 17386         prompt("Disable putField")
       
 17387     }
       
 17388     field(PROC, DBF_UCHAR) {
       
 17389         pp(TRUE)
       
 17390         prompt("Force Processing")
       
 17391         interest(3)
       
 17392     }
       
 17393     field(STAT, DBF_MENU) {
       
 17394         special(SPC_NOMOD)
       
 17395         prompt("Alarm Status")
       
 17396         menu(menuAlarmStat)
       
 17397         initial("UDF")
       
 17398     }
       
 17399     field(SEVR, DBF_MENU) {
       
 17400         special(SPC_NOMOD)
       
 17401         prompt("Alarm Severity")
       
 17402         menu(menuAlarmSevr)
       
 17403     }
       
 17404     field(NSTA, DBF_MENU) {
       
 17405         interest(2)
       
 17406         special(SPC_NOMOD)
       
 17407         prompt("New Alarm Status")
       
 17408         menu(menuAlarmStat)
       
 17409     }
       
 17410     field(NSEV, DBF_MENU) {
       
 17411         special(SPC_NOMOD)
       
 17412         interest(2)
       
 17413         prompt("New Alarm Severity")
       
 17414         menu(menuAlarmSevr)
       
 17415     }
       
 17416     field(ACKS, DBF_MENU) {
       
 17417         menu(menuAlarmSevr)
       
 17418         prompt("Alarm Ack Severity")
       
 17419         interest(2)
       
 17420         special(SPC_NOMOD)
       
 17421     }
       
 17422     field(ACKT, DBF_MENU) {
       
 17423         initial("YES")
       
 17424         prompt("Alarm Ack Transient")
       
 17425         promptgroup("70 - Alarm")
       
 17426         interest(2)
       
 17427         special(SPC_NOMOD)
       
 17428         menu(menuYesNo)
       
 17429     }
       
 17430     field(DISS, DBF_MENU) {
       
 17431         prompt("Disable Alarm Sevrty")
       
 17432         promptgroup("70 - Alarm")
       
 17433         interest(1)
       
 17434         menu(menuAlarmSevr)
       
 17435     }
       
 17436     field(LCNT, DBF_UCHAR) {
       
 17437         special(SPC_NOMOD)
       
 17438         interest(2)
       
 17439         prompt("Lock Count")
       
 17440     }
       
 17441     field(PACT, DBF_UCHAR) {
       
 17442         interest(1)
       
 17443         special(SPC_NOMOD)
       
 17444         prompt("Record active")
       
 17445     }
       
 17446     field(PUTF, DBF_UCHAR) {
       
 17447         special(SPC_NOMOD)
       
 17448         interest(1)
       
 17449         prompt("dbPutField process")
       
 17450     }
       
 17451     field(RPRO, DBF_UCHAR) {
       
 17452         special(SPC_NOMOD)
       
 17453         interest(1)
       
 17454         prompt("Reprocess ")
       
 17455     }
       
 17456     field(ASP, DBF_NOACCESS) {
       
 17457         extra("struct asgMember    *asp")
       
 17458         special(SPC_NOMOD)
       
 17459         interest(4)
       
 17460         prompt("Access Security Pvt")
       
 17461     }
       
 17462     field(PPN, DBF_NOACCESS) {
       
 17463         extra("struct processNotify *ppn")
       
 17464         interest(4)
       
 17465         special(SPC_NOMOD)
       
 17466         prompt("pprocessNotify")
       
 17467     }
       
 17468     field(PPNR, DBF_NOACCESS) {
       
 17469         special(SPC_NOMOD)
       
 17470         interest(4)
       
 17471         prompt("pprocessNotifyRecord")
       
 17472         extra("struct processNotifyRecord *ppnr")
       
 17473     }
       
 17474     field(SPVT, DBF_NOACCESS) {
       
 17475         interest(4)
       
 17476         special(SPC_NOMOD)
       
 17477         prompt("Scan Private")
       
 17478         extra("struct scan_element *spvt")
       
 17479     }
       
 17480     field(RSET, DBF_NOACCESS) {
       
 17481         extra("struct typed_rset   *rset")
       
 17482         interest(4)
       
 17483         special(SPC_NOMOD)
       
 17484         prompt("Address of RSET")
       
 17485     }
       
 17486     field(DSET, DBF_NOACCESS) {
       
 17487         extra("struct dset         *dset")
       
 17488         prompt("DSET address")
       
 17489         special(SPC_NOMOD)
       
 17490         interest(4)
       
 17491     }
       
 17492     field(DPVT, DBF_NOACCESS) {
       
 17493         extra("void                *dpvt")
       
 17494         prompt("Device Private")
       
 17495         special(SPC_NOMOD)
       
 17496         interest(4)
       
 17497     }
       
 17498     field(RDES, DBF_NOACCESS) {
       
 17499         special(SPC_NOMOD)
       
 17500         interest(4)
       
 17501         prompt("Address of dbRecordType")
       
 17502         extra("struct dbRecordType *rdes")
       
 17503     }
       
 17504     field(LSET, DBF_NOACCESS) {
       
 17505         prompt("Lock Set")
       
 17506         special(SPC_NOMOD)
       
 17507         interest(4)
       
 17508         extra("struct lockRecord   *lset")
       
 17509     }
       
 17510     field(PRIO, DBF_MENU) {
       
 17511         prompt("Scheduling Priority")
       
 17512         interest(1)
       
 17513         promptgroup("20 - Scan")
       
 17514         special(SPC_SCAN)
       
 17515         menu(menuPriority)
       
 17516     }
       
 17517     field(TPRO, DBF_UCHAR) {
       
 17518         prompt("Trace Processing")
       
 17519     }
       
 17520     field(BKPT, DBF_NOACCESS) {
       
 17521         special(SPC_NOMOD)
       
 17522         interest(1)
       
 17523         prompt("Break Point")
       
 17524         extra("char                bkpt")
       
 17525     }
       
 17526     field(UDF, DBF_UCHAR) {
       
 17527         pp(TRUE)
       
 17528         initial("1")
       
 17529         promptgroup("10 - Common")
       
 17530         interest(1)
       
 17531         prompt("Undefined")
       
 17532     }
       
 17533     field(UDFS, DBF_MENU) {
       
 17534         menu(menuAlarmSevr)
       
 17535         promptgroup("70 - Alarm")
       
 17536         interest(1)
       
 17537         prompt("Undefined Alarm Sevrty")
       
 17538         initial("INVALID")
       
 17539     }
       
 17540     field(TIME, DBF_NOACCESS) {
       
 17541         extra("epicsTimeStamp      time")
       
 17542         interest(2)
       
 17543         special(SPC_NOMOD)
       
 17544         prompt("Time")
       
 17545     }
       
 17546     field(FLNK, DBF_FWDLINK) {
       
 17547         prompt("Forward Process Link")
       
 17548         interest(1)
       
 17549         promptgroup("20 - Scan")
       
 17550     }
       
 17551     field(VAL, DBF_DOUBLE) {
       
 17552         pp(TRUE)
       
 17553         prompt("Result")
       
 17554         asl(ASL0)
       
 17555     }
       
 17556     field(INAM, DBF_STRING) {
       
 17557         size(40)
       
 17558         special(SPC_NOMOD)
       
 17559         interest(1)
       
 17560         promptgroup("30 - Action")
       
 17561         prompt("Init Routine Name")
       
 17562     }
       
 17563     field(SNAM, DBF_STRING) {
       
 17564         size(40)
       
 17565         prompt("Subroutine Name")
       
 17566         interest(1)
       
 17567         special(SPC_MOD)
       
 17568         promptgroup("30 - Action")
       
 17569     }
       
 17570     field(SADR, DBF_NOACCESS) {
       
 17571         special(SPC_NOMOD)
       
 17572         interest(4)
       
 17573         prompt("Subroutine Address")
       
 17574         extra("SUBFUNCPTR sadr")
       
 17575     }
       
 17576     field(INPA, DBF_INLINK) {
       
 17577         prompt("Input A")
       
 17578         promptgroup("41 - Input A-F")
       
 17579         interest(1)
       
 17580     }
       
 17581     field(INPB, DBF_INLINK) {
       
 17582         prompt("Input B")
       
 17583         promptgroup("41 - Input A-F")
       
 17584         interest(1)
       
 17585     }
       
 17586     field(INPC, DBF_INLINK) {
       
 17587         promptgroup("41 - Input A-F")
       
 17588         interest(1)
       
 17589         prompt("Input C")
       
 17590     }
       
 17591     field(INPD, DBF_INLINK) {
       
 17592         interest(1)
       
 17593         promptgroup("41 - Input A-F")
       
 17594         prompt("Input D")
       
 17595     }
       
 17596     field(INPE, DBF_INLINK) {
       
 17597         prompt("Input E")
       
 17598         promptgroup("41 - Input A-F")
       
 17599         interest(1)
       
 17600     }
       
 17601     field(INPF, DBF_INLINK) {
       
 17602         prompt("Input F")
       
 17603         promptgroup("41 - Input A-F")
       
 17604         interest(1)
       
 17605     }
       
 17606     field(INPG, DBF_INLINK) {
       
 17607         prompt("Input G")
       
 17608         promptgroup("42 - Input G-L")
       
 17609         interest(1)
       
 17610     }
       
 17611     field(INPH, DBF_INLINK) {
       
 17612         prompt("Input H")
       
 17613         interest(1)
       
 17614         promptgroup("42 - Input G-L")
       
 17615     }
       
 17616     field(INPI, DBF_INLINK) {
       
 17617         promptgroup("42 - Input G-L")
       
 17618         interest(1)
       
 17619         prompt("Input I")
       
 17620     }
       
 17621     field(INPJ, DBF_INLINK) {
       
 17622         prompt("Input J")
       
 17623         interest(1)
       
 17624         promptgroup("42 - Input G-L")
       
 17625     }
       
 17626     field(INPK, DBF_INLINK) {
       
 17627         interest(1)
       
 17628         promptgroup("42 - Input G-L")
       
 17629         prompt("Input K")
       
 17630     }
       
 17631     field(INPL, DBF_INLINK) {
       
 17632         promptgroup("42 - Input G-L")
       
 17633         interest(1)
       
 17634         prompt("Input L")
       
 17635     }
       
 17636     field(EGU, DBF_STRING) {
       
 17637         prompt("Engineering Units")
       
 17638         prop(YES)
       
 17639         interest(1)
       
 17640         promptgroup("80 - Display")
       
 17641         size(16)
       
 17642     }
       
 17643     field(HOPR, DBF_DOUBLE) {
       
 17644         prompt("High Operating Range")
       
 17645         prop(YES)
       
 17646         promptgroup("80 - Display")
       
 17647         interest(1)
       
 17648     }
       
 17649     field(LOPR, DBF_DOUBLE) {
       
 17650         prompt("Low Operating Range")
       
 17651         prop(YES)
       
 17652         promptgroup("80 - Display")
       
 17653         interest(1)
       
 17654     }
       
 17655     field(HIHI, DBF_DOUBLE) {
       
 17656         promptgroup("70 - Alarm")
       
 17657         prop(YES)
       
 17658         interest(1)
       
 17659         prompt("Hihi Alarm Limit")
       
 17660         pp(TRUE)
       
 17661     }
       
 17662     field(LOLO, DBF_DOUBLE) {
       
 17663         pp(TRUE)
       
 17664         interest(1)
       
 17665         prop(YES)
       
 17666         promptgroup("70 - Alarm")
       
 17667         prompt("Lolo Alarm Limit")
       
 17668     }
       
 17669     field(HIGH, DBF_DOUBLE) {
       
 17670         prompt("High Alarm Limit")
       
 17671         interest(1)
       
 17672         prop(YES)
       
 17673         promptgroup("70 - Alarm")
       
 17674         pp(TRUE)
       
 17675     }
       
 17676     field(LOW, DBF_DOUBLE) {
       
 17677         prompt("Low Alarm Limit")
       
 17678         prop(YES)
       
 17679         promptgroup("70 - Alarm")
       
 17680         interest(1)
       
 17681         pp(TRUE)
       
 17682     }
       
 17683     field(PREC, DBF_SHORT) {
       
 17684         prompt("Display Precision")
       
 17685         interest(1)
       
 17686         prop(YES)
       
 17687         promptgroup("80 - Display")
       
 17688     }
       
 17689     field(BRSV, DBF_MENU) {
       
 17690         pp(TRUE)
       
 17691         menu(menuAlarmSevr)
       
 17692         prompt("Bad Return Severity")
       
 17693         promptgroup("70 - Alarm")
       
 17694         interest(1)
       
 17695     }
       
 17696     field(HHSV, DBF_MENU) {
       
 17697         menu(menuAlarmSevr)
       
 17698         prompt("Hihi Severity")
       
 17699         interest(1)
       
 17700         prop(YES)
       
 17701         promptgroup("70 - Alarm")
       
 17702         pp(TRUE)
       
 17703     }
       
 17704     field(LLSV, DBF_MENU) {
       
 17705         menu(menuAlarmSevr)
       
 17706         interest(1)
       
 17707         prop(YES)
       
 17708         promptgroup("70 - Alarm")
       
 17709         prompt("Lolo Severity")
       
 17710         pp(TRUE)
       
 17711     }
       
 17712     field(HSV, DBF_MENU) {
       
 17713         pp(TRUE)
       
 17714         menu(menuAlarmSevr)
       
 17715         interest(1)
       
 17716         prop(YES)
       
 17717         promptgroup("70 - Alarm")
       
 17718         prompt("High Severity")
       
 17719     }
       
 17720     field(LSV, DBF_MENU) {
       
 17721         promptgroup("70 - Alarm")
       
 17722         prop(YES)
       
 17723         interest(1)
       
 17724         prompt("Low Severity")
       
 17725         menu(menuAlarmSevr)
       
 17726         pp(TRUE)
       
 17727     }
       
 17728     field(HYST, DBF_DOUBLE) {
       
 17729         promptgroup("70 - Alarm")
       
 17730         interest(1)
       
 17731         prompt("Alarm Deadband")
       
 17732     }
       
 17733     field(ADEL, DBF_DOUBLE) {
       
 17734         prompt("Archive Deadband")
       
 17735         interest(1)
       
 17736         promptgroup("80 - Display")
       
 17737     }
       
 17738     field(MDEL, DBF_DOUBLE) {
       
 17739         prompt("Monitor Deadband")
       
 17740         promptgroup("80 - Display")
       
 17741         interest(1)
       
 17742     }
       
 17743     field(A, DBF_DOUBLE) {
       
 17744         prompt("Value of Input A")
       
 17745         pp(TRUE)
       
 17746     }
       
 17747     field(B, DBF_DOUBLE) {
       
 17748         prompt("Value of Input B")
       
 17749         pp(TRUE)
       
 17750     }
       
 17751     field(C, DBF_DOUBLE) {
       
 17752         pp(TRUE)
       
 17753         prompt("Value of Input C")
       
 17754     }
       
 17755     field(D, DBF_DOUBLE) {
       
 17756         prompt("Value of Input D")
       
 17757         pp(TRUE)
       
 17758     }
       
 17759     field(E, DBF_DOUBLE) {
       
 17760         prompt("Value of Input E")
       
 17761         pp(TRUE)
       
 17762     }
       
 17763     field(F, DBF_DOUBLE) {
       
 17764         prompt("Value of Input F")
       
 17765         pp(TRUE)
       
 17766     }
       
 17767     field(G, DBF_DOUBLE) {
       
 17768         pp(TRUE)
       
 17769         prompt("Value of Input G")
       
 17770     }
       
 17771     field(H, DBF_DOUBLE) {
       
 17772         prompt("Value of Input H")
       
 17773         pp(TRUE)
       
 17774     }
       
 17775     field(I, DBF_DOUBLE) {
       
 17776         prompt("Value of Input I")
       
 17777         pp(TRUE)
       
 17778     }
       
 17779     field(J, DBF_DOUBLE) {
       
 17780         prompt("Value of Input J")
       
 17781         pp(TRUE)
       
 17782     }
       
 17783     field(K, DBF_DOUBLE) {
       
 17784         prompt("Value of Input K")
       
 17785         pp(TRUE)
       
 17786     }
       
 17787     field(L, DBF_DOUBLE) {
       
 17788         prompt("Value of Input L")
       
 17789         pp(TRUE)
       
 17790     }
       
 17791     field(LA, DBF_DOUBLE) {
       
 17792         prompt("Prev Value of A")
       
 17793         interest(3)
       
 17794         special(SPC_NOMOD)
       
 17795     }
       
 17796     field(LB, DBF_DOUBLE) {
       
 17797         prompt("Prev Value of B")
       
 17798         interest(3)
       
 17799         special(SPC_NOMOD)
       
 17800     }
       
 17801     field(LC, DBF_DOUBLE) {
       
 17802         prompt("Prev Value of C")
       
 17803         interest(3)
       
 17804         special(SPC_NOMOD)
       
 17805     }
       
 17806     field(LD, DBF_DOUBLE) {
       
 17807         prompt("Prev Value of D")
       
 17808         interest(3)
       
 17809         special(SPC_NOMOD)
       
 17810     }
       
 17811     field(LE, DBF_DOUBLE) {
       
 17812         special(SPC_NOMOD)
       
 17813         interest(3)
       
 17814         prompt("Prev Value of E")
       
 17815     }
       
 17816     field(LF, DBF_DOUBLE) {
       
 17817         interest(3)
       
 17818         special(SPC_NOMOD)
       
 17819         prompt("Prev Value of F")
       
 17820     }
       
 17821     field(LG, DBF_DOUBLE) {
       
 17822         interest(3)
       
 17823         special(SPC_NOMOD)
       
 17824         prompt("Prev Value of G")
       
 17825     }
       
 17826     field(LH, DBF_DOUBLE) {
       
 17827         interest(3)
       
 17828         special(SPC_NOMOD)
       
 17829         prompt("Prev Value of H")
       
 17830     }
       
 17831     field(LI, DBF_DOUBLE) {
       
 17832         special(SPC_NOMOD)
       
 17833         interest(3)
       
 17834         prompt("Prev Value of I")
       
 17835     }
       
 17836     field(LJ, DBF_DOUBLE) {
       
 17837         special(SPC_NOMOD)
       
 17838         interest(3)
       
 17839         prompt("Prev Value of J")
       
 17840     }
       
 17841     field(LK, DBF_DOUBLE) {
       
 17842         special(SPC_NOMOD)
       
 17843         interest(3)
       
 17844         prompt("Prev Value of K")
       
 17845     }
       
 17846     field(LL, DBF_DOUBLE) {
       
 17847         prompt("Prev Value of L")
       
 17848         special(SPC_NOMOD)
       
 17849         interest(3)
       
 17850     }
       
 17851     field(LALM, DBF_DOUBLE) {
       
 17852         prompt("Last Value Alarmed")
       
 17853         interest(3)
       
 17854         special(SPC_NOMOD)
       
 17855     }
       
 17856     field(ALST, DBF_DOUBLE) {
       
 17857         special(SPC_NOMOD)
       
 17858         interest(3)
       
 17859         prompt("Last Value Archived")
       
 17860     }
       
 17861     field(MLST, DBF_DOUBLE) {
       
 17862         special(SPC_NOMOD)
       
 17863         interest(3)
       
 17864         prompt("Last Value Monitored")
       
 17865     }
       
 17866 }
       
 17867 recordtype(transform) {
       
 17868     %#include "epicsTypes.h"
       
 17869     %#include "link.h"
       
 17870     %#include "epicsMutex.h"
       
 17871     %#include "ellLib.h"
       
 17872     %#include "epicsTime.h"
       
 17873     field(NAME, DBF_STRING) {
       
 17874         special(SPC_NOMOD)
       
 17875         prompt("Record Name")
       
 17876         size(61)
       
 17877     }
       
 17878     field(DESC, DBF_STRING) {
       
 17879         prompt("Descriptor")
       
 17880         promptgroup("10 - Common")
       
 17881         size(41)
       
 17882     }
       
 17883     field(ASG, DBF_STRING) {
       
 17884         promptgroup("10 - Common")
       
 17885         special(SPC_AS)
       
 17886         prompt("Access Security Group")
       
 17887         size(29)
       
 17888     }
       
 17889     field(SCAN, DBF_MENU) {
       
 17890         interest(1)
       
 17891         special(SPC_SCAN)
       
 17892         promptgroup("20 - Scan")
       
 17893         prompt("Scan Mechanism")
       
 17894         menu(menuScan)
       
 17895     }
       
 17896     field(PINI, DBF_MENU) {
       
 17897         promptgroup("20 - Scan")
       
 17898         interest(1)
       
 17899         prompt("Process at iocInit")
       
 17900         menu(menuPini)
       
 17901     }
       
 17902     field(PHAS, DBF_SHORT) {
       
 17903         interest(1)
       
 17904         special(SPC_SCAN)
       
 17905         promptgroup("20 - Scan")
       
 17906         prompt("Scan Phase")
       
 17907     }
       
 17908     field(EVNT, DBF_STRING) {
       
 17909         size(40)
       
 17910         interest(1)
       
 17911         special(SPC_SCAN)
       
 17912         promptgroup("20 - Scan")
       
 17913         prompt("Event Name")
       
 17914     }
       
 17915     field(TSE, DBF_SHORT) {
       
 17916         prompt("Time Stamp Event")
       
 17917         interest(1)
       
 17918         promptgroup("20 - Scan")
       
 17919     }
       
 17920     field(TSEL, DBF_INLINK) {
       
 17921         promptgroup("20 - Scan")
       
 17922         interest(1)
       
 17923         prompt("Time Stamp Link")
       
 17924     }
       
 17925     field(DTYP, DBF_DEVICE) {
       
 17926         promptgroup("10 - Common")
       
 17927         interest(1)
       
 17928         prompt("Device Type")
       
 17929     }
       
 17930     field(DISV, DBF_SHORT) {
       
 17931         promptgroup("20 - Scan")
       
 17932         prompt("Disable Value")
       
 17933         initial("1")
       
 17934     }
       
 17935     field(DISA, DBF_SHORT) {
       
 17936         prompt("Disable")
       
 17937     }
       
 17938     field(SDIS, DBF_INLINK) {
       
 17939         prompt("Scanning Disable")
       
 17940         interest(1)
       
 17941         promptgroup("20 - Scan")
       
 17942     }
       
 17943     field(MLOK, DBF_NOACCESS) {
       
 17944         extra("epicsMutexId        mlok")
       
 17945         prompt("Monitor lock")
       
 17946         special(SPC_NOMOD)
       
 17947         interest(4)
       
 17948     }
       
 17949     field(MLIS, DBF_NOACCESS) {
       
 17950         extra("ELLLIST             mlis")
       
 17951         interest(4)
       
 17952         special(SPC_NOMOD)
       
 17953         prompt("Monitor List")
       
 17954     }
       
 17955     field(BKLNK, DBF_NOACCESS) {
       
 17956         prompt("Backwards link tracking")
       
 17957         interest(4)
       
 17958         special(SPC_NOMOD)
       
 17959         extra("ELLLIST             bklnk")
       
 17960     }
       
 17961     field(DISP, DBF_UCHAR) {
       
 17962         prompt("Disable putField")
       
 17963     }
       
 17964     field(PROC, DBF_UCHAR) {
       
 17965         interest(3)
       
 17966         prompt("Force Processing")
       
 17967         pp(TRUE)
       
 17968     }
       
 17969     field(STAT, DBF_MENU) {
       
 17970         initial("UDF")
       
 17971         special(SPC_NOMOD)
       
 17972         prompt("Alarm Status")
       
 17973         menu(menuAlarmStat)
       
 17974     }
       
 17975     field(SEVR, DBF_MENU) {
       
 17976         menu(menuAlarmSevr)
       
 17977         prompt("Alarm Severity")
       
 17978         special(SPC_NOMOD)
       
 17979     }
       
 17980     field(NSTA, DBF_MENU) {
       
 17981         special(SPC_NOMOD)
       
 17982         interest(2)
       
 17983         prompt("New Alarm Status")
       
 17984         menu(menuAlarmStat)
       
 17985     }
       
 17986     field(NSEV, DBF_MENU) {
       
 17987         menu(menuAlarmSevr)
       
 17988         interest(2)
       
 17989         special(SPC_NOMOD)
       
 17990         prompt("New Alarm Severity")
       
 17991     }
       
 17992     field(ACKS, DBF_MENU) {
       
 17993         menu(menuAlarmSevr)
       
 17994         prompt("Alarm Ack Severity")
       
 17995         interest(2)
       
 17996         special(SPC_NOMOD)
       
 17997     }
       
 17998     field(ACKT, DBF_MENU) {
       
 17999         initial("YES")
       
 18000         menu(menuYesNo)
       
 18001         prompt("Alarm Ack Transient")
       
 18002         special(SPC_NOMOD)
       
 18003         interest(2)
       
 18004         promptgroup("70 - Alarm")
       
 18005     }
       
 18006     field(DISS, DBF_MENU) {
       
 18007         prompt("Disable Alarm Sevrty")
       
 18008         promptgroup("70 - Alarm")
       
 18009         interest(1)
       
 18010         menu(menuAlarmSevr)
       
 18011     }
       
 18012     field(LCNT, DBF_UCHAR) {
       
 18013         interest(2)
       
 18014         special(SPC_NOMOD)
       
 18015         prompt("Lock Count")
       
 18016     }
       
 18017     field(PACT, DBF_UCHAR) {
       
 18018         prompt("Record active")
       
 18019         special(SPC_NOMOD)
       
 18020         interest(1)
       
 18021     }
       
 18022     field(PUTF, DBF_UCHAR) {
       
 18023         interest(1)
       
 18024         special(SPC_NOMOD)
       
 18025         prompt("dbPutField process")
       
 18026     }
       
 18027     field(RPRO, DBF_UCHAR) {
       
 18028         interest(1)
       
 18029         special(SPC_NOMOD)
       
 18030         prompt("Reprocess ")
       
 18031     }
       
 18032     field(ASP, DBF_NOACCESS) {
       
 18033         extra("struct asgMember    *asp")
       
 18034         prompt("Access Security Pvt")
       
 18035         special(SPC_NOMOD)
       
 18036         interest(4)
       
 18037     }
       
 18038     field(PPN, DBF_NOACCESS) {
       
 18039         special(SPC_NOMOD)
       
 18040         interest(4)
       
 18041         prompt("pprocessNotify")
       
 18042         extra("struct processNotify *ppn")
       
 18043     }
       
 18044     field(PPNR, DBF_NOACCESS) {
       
 18045         extra("struct processNotifyRecord *ppnr")
       
 18046         special(SPC_NOMOD)
       
 18047         interest(4)
       
 18048         prompt("pprocessNotifyRecord")
       
 18049     }
       
 18050     field(SPVT, DBF_NOACCESS) {
       
 18051         prompt("Scan Private")
       
 18052         interest(4)
       
 18053         special(SPC_NOMOD)
       
 18054         extra("struct scan_element *spvt")
       
 18055     }
       
 18056     field(RSET, DBF_NOACCESS) {
       
 18057         interest(4)
       
 18058         special(SPC_NOMOD)
       
 18059         prompt("Address of RSET")
       
 18060         extra("struct typed_rset   *rset")
       
 18061     }
       
 18062     field(DSET, DBF_NOACCESS) {
       
 18063         extra("struct dset         *dset")
       
 18064         interest(4)
       
 18065         special(SPC_NOMOD)
       
 18066         prompt("DSET address")
       
 18067     }
       
 18068     field(DPVT, DBF_NOACCESS) {
       
 18069         interest(4)
       
 18070         special(SPC_NOMOD)
       
 18071         prompt("Device Private")
       
 18072         extra("void                *dpvt")
       
 18073     }
       
 18074     field(RDES, DBF_NOACCESS) {
       
 18075         extra("struct dbRecordType *rdes")
       
 18076         prompt("Address of dbRecordType")
       
 18077         interest(4)
       
 18078         special(SPC_NOMOD)
       
 18079     }
       
 18080     field(LSET, DBF_NOACCESS) {
       
 18081         special(SPC_NOMOD)
       
 18082         interest(4)
       
 18083         prompt("Lock Set")
       
 18084         extra("struct lockRecord   *lset")
       
 18085     }
       
 18086     field(PRIO, DBF_MENU) {
       
 18087         menu(menuPriority)
       
 18088         prompt("Scheduling Priority")
       
 18089         special(SPC_SCAN)
       
 18090         interest(1)
       
 18091         promptgroup("20 - Scan")
       
 18092     }
       
 18093     field(TPRO, DBF_UCHAR) {
       
 18094         prompt("Trace Processing")
       
 18095     }
       
 18096     field(BKPT, DBF_NOACCESS) {
       
 18097         extra("char                bkpt")
       
 18098         interest(1)
       
 18099         special(SPC_NOMOD)
       
 18100         prompt("Break Point")
       
 18101     }
       
 18102     field(UDF, DBF_UCHAR) {
       
 18103         pp(TRUE)
       
 18104         initial("1")
       
 18105         promptgroup("10 - Common")
       
 18106         interest(1)
       
 18107         prompt("Undefined")
       
 18108     }
       
 18109     field(UDFS, DBF_MENU) {
       
 18110         menu(menuAlarmSevr)
       
 18111         interest(1)
       
 18112         promptgroup("70 - Alarm")
       
 18113         prompt("Undefined Alarm Sevrty")
       
 18114         initial("INVALID")
       
 18115     }
       
 18116     field(TIME, DBF_NOACCESS) {
       
 18117         interest(2)
       
 18118         special(SPC_NOMOD)
       
 18119         prompt("Time")
       
 18120         extra("epicsTimeStamp      time")
       
 18121     }
       
 18122     field(FLNK, DBF_FWDLINK) {
       
 18123         prompt("Forward Process Link")
       
 18124         interest(1)
       
 18125         promptgroup("20 - Scan")
       
 18126     }
       
 18127     field(VERS, DBF_FLOAT) {
       
 18128         special(SPC_NOMOD)
       
 18129         prompt("Code Version")
       
 18130         initial("1")
       
 18131     }
       
 18132     field(RPVT, DBF_NOACCESS) {
       
 18133         size(4)
       
 18134         extra("void *         rpvt")
       
 18135         prompt("Record Private")
       
 18136         interest(4)
       
 18137         special(SPC_NOMOD)
       
 18138     }
       
 18139     field(IVLA, DBF_MENU) {
       
 18140         initial("0")
       
 18141         menu(transformIVLA)
       
 18142         interest(1)
       
 18143         promptgroup("10 - Common")
       
 18144         prompt("Invalid link action")
       
 18145     }
       
 18146     field(COPT, DBF_MENU) {
       
 18147         prompt("Calc option")
       
 18148         promptgroup("10 - Common")
       
 18149         interest(1)
       
 18150         menu(transformCOPT)
       
 18151         initial("Conditional")
       
 18152     }
       
 18153     field(VAL, DBF_DOUBLE) {
       
 18154         prompt("Result")
       
 18155     }
       
 18156     field(CLCA, DBF_STRING) {
       
 18157         size(120)
       
 18158         prompt("Calculation A")
       
 18159         promptgroup("10 - Common")
       
 18160         special(SPC_MOD)
       
 18161     }
       
 18162     field(CLCB, DBF_STRING) {
       
 18163         size(120)
       
 18164         special(SPC_MOD)
       
 18165         promptgroup("10 - Common")
       
 18166         prompt("Calculation B")
       
 18167     }
       
 18168     field(CLCC, DBF_STRING) {
       
 18169         special(SPC_MOD)
       
 18170         promptgroup("10 - Common")
       
 18171         prompt("Calculation C")
       
 18172         size(120)
       
 18173     }
       
 18174     field(CLCD, DBF_STRING) {
       
 18175         prompt("Calculation D")
       
 18176         special(SPC_MOD)
       
 18177         promptgroup("10 - Common")
       
 18178         size(120)
       
 18179     }
       
 18180     field(CLCE, DBF_STRING) {
       
 18181         prompt("Calculation E")
       
 18182         special(SPC_MOD)
       
 18183         promptgroup("10 - Common")
       
 18184         size(120)
       
 18185     }
       
 18186     field(CLCF, DBF_STRING) {
       
 18187         prompt("Calculation F")
       
 18188         promptgroup("10 - Common")
       
 18189         special(SPC_MOD)
       
 18190         size(120)
       
 18191     }
       
 18192     field(CLCG, DBF_STRING) {
       
 18193         prompt("Calculation G")
       
 18194         special(SPC_MOD)
       
 18195         promptgroup("10 - Common")
       
 18196         size(120)
       
 18197     }
       
 18198     field(CLCH, DBF_STRING) {
       
 18199         size(120)
       
 18200         promptgroup("10 - Common")
       
 18201         special(SPC_MOD)
       
 18202         prompt("Calculation H")
       
 18203     }
       
 18204     field(CLCI, DBF_STRING) {
       
 18205         promptgroup("10 - Common")
       
 18206         special(SPC_MOD)
       
 18207         prompt("Calculation I")
       
 18208         size(120)
       
 18209     }
       
 18210     field(CLCJ, DBF_STRING) {
       
 18211         promptgroup("10 - Common")
       
 18212         special(SPC_MOD)
       
 18213         prompt("Calculation J")
       
 18214         size(120)
       
 18215     }
       
 18216     field(CLCK, DBF_STRING) {
       
 18217         size(120)
       
 18218         prompt("Calculation K")
       
 18219         special(SPC_MOD)
       
 18220         promptgroup("10 - Common")
       
 18221     }
       
 18222     field(CLCL, DBF_STRING) {
       
 18223         size(120)
       
 18224         prompt("Calculation L")
       
 18225         promptgroup("10 - Common")
       
 18226         special(SPC_MOD)
       
 18227     }
       
 18228     field(CLCM, DBF_STRING) {
       
 18229         prompt("Calculation M")
       
 18230         special(SPC_MOD)
       
 18231         promptgroup("10 - Common")
       
 18232         size(120)
       
 18233     }
       
 18234     field(CLCN, DBF_STRING) {
       
 18235         special(SPC_MOD)
       
 18236         promptgroup("10 - Common")
       
 18237         prompt("Calculation N")
       
 18238         size(120)
       
 18239     }
       
 18240     field(CLCO, DBF_STRING) {
       
 18241         size(120)
       
 18242         special(SPC_MOD)
       
 18243         promptgroup("10 - Common")
       
 18244         prompt("Calculation O")
       
 18245     }
       
 18246     field(CLCP, DBF_STRING) {
       
 18247         promptgroup("10 - Common")
       
 18248         special(SPC_MOD)
       
 18249         prompt("Calculation P")
       
 18250         size(120)
       
 18251     }
       
 18252     field(CAV, DBF_LONG) {
       
 18253         interest(1)
       
 18254         prompt("CALC Invalid")
       
 18255     }
       
 18256     field(CBV, DBF_LONG) {
       
 18257         interest(1)
       
 18258         prompt("CALC Invalid")
       
 18259     }
       
 18260     field(CCV, DBF_LONG) {
       
 18261         interest(1)
       
 18262         prompt("CALC Invalid")
       
 18263     }
       
 18264     field(CDV, DBF_LONG) {
       
 18265         prompt("CALC Invalid")
       
 18266         interest(1)
       
 18267     }
       
 18268     field(CEV, DBF_LONG) {
       
 18269         prompt("CALC Invalid")
       
 18270         interest(1)
       
 18271     }
       
 18272     field(CFV, DBF_LONG) {
       
 18273         prompt("CALC Invalid")
       
 18274         interest(1)
       
 18275     }
       
 18276     field(CGV, DBF_LONG) {
       
 18277         prompt("CALC Invalid")
       
 18278         interest(1)
       
 18279     }
       
 18280     field(CHV, DBF_LONG) {
       
 18281         interest(1)
       
 18282         prompt("CALC Invalid")
       
 18283     }
       
 18284     field(CIV, DBF_LONG) {
       
 18285         prompt("CALC Invalid")
       
 18286         interest(1)
       
 18287     }
       
 18288     field(CJV, DBF_LONG) {
       
 18289         prompt("CALC Invalid")
       
 18290         interest(1)
       
 18291     }
       
 18292     field(CKV, DBF_LONG) {
       
 18293         prompt("CALC Invalid")
       
 18294         interest(1)
       
 18295     }
       
 18296     field(CLV, DBF_LONG) {
       
 18297         interest(1)
       
 18298         prompt("CALC Invalid")
       
 18299     }
       
 18300     field(CMV, DBF_LONG) {
       
 18301         prompt("CALC Invalid")
       
 18302         interest(1)
       
 18303     }
       
 18304     field(CNV, DBF_LONG) {
       
 18305         prompt("CALC Invalid")
       
 18306         interest(1)
       
 18307     }
       
 18308     field(COV, DBF_LONG) {
       
 18309         interest(1)
       
 18310         prompt("CALC Invalid")
       
 18311     }
       
 18312     field(CPV, DBF_LONG) {
       
 18313         interest(1)
       
 18314         prompt("CALC Invalid")
       
 18315     }
       
 18316     field(INPA, DBF_INLINK) {
       
 18317         prompt("Input A")
       
 18318         interest(1)
       
 18319         promptgroup("10 - Common")
       
 18320         special(SPC_MOD)
       
 18321     }
       
 18322     field(INPB, DBF_INLINK) {
       
 18323         promptgroup("10 - Common")
       
 18324         interest(1)
       
 18325         special(SPC_MOD)
       
 18326         prompt("Input B")
       
 18327     }
       
 18328     field(INPC, DBF_INLINK) {
       
 18329         promptgroup("10 - Common")
       
 18330         interest(1)
       
 18331         special(SPC_MOD)
       
 18332         prompt("Input C")
       
 18333     }
       
 18334     field(INPD, DBF_INLINK) {
       
 18335         prompt("Input D")
       
 18336         promptgroup("10 - Common")
       
 18337         interest(1)
       
 18338         special(SPC_MOD)
       
 18339     }
       
 18340     field(INPE, DBF_INLINK) {
       
 18341         interest(1)
       
 18342         promptgroup("10 - Common")
       
 18343         special(SPC_MOD)
       
 18344         prompt("Input E")
       
 18345     }
       
 18346     field(INPF, DBF_INLINK) {
       
 18347         prompt("Input F")
       
 18348         interest(1)
       
 18349         promptgroup("10 - Common")
       
 18350         special(SPC_MOD)
       
 18351     }
       
 18352     field(INPG, DBF_INLINK) {
       
 18353         prompt("Input G")
       
 18354         promptgroup("10 - Common")
       
 18355         interest(1)
       
 18356         special(SPC_MOD)
       
 18357     }
       
 18358     field(INPH, DBF_INLINK) {
       
 18359         special(SPC_MOD)
       
 18360         interest(1)
       
 18361         promptgroup("10 - Common")
       
 18362         prompt("Input H")
       
 18363     }
       
 18364     field(INPI, DBF_INLINK) {
       
 18365         promptgroup("10 - Common")
       
 18366         interest(1)
       
 18367         special(SPC_MOD)
       
 18368         prompt("Input I")
       
 18369     }
       
 18370     field(INPJ, DBF_INLINK) {
       
 18371         interest(1)
       
 18372         special(SPC_MOD)
       
 18373         promptgroup("10 - Common")
       
 18374         prompt("Input J")
       
 18375     }
       
 18376     field(INPK, DBF_INLINK) {
       
 18377         prompt("Input K")
       
 18378         interest(1)
       
 18379         special(SPC_MOD)
       
 18380         promptgroup("10 - Common")
       
 18381     }
       
 18382     field(INPL, DBF_INLINK) {
       
 18383         prompt("Input L")
       
 18384         interest(1)
       
 18385         special(SPC_MOD)
       
 18386         promptgroup("10 - Common")
       
 18387     }
       
 18388     field(INPM, DBF_INLINK) {
       
 18389         interest(1)
       
 18390         promptgroup("10 - Common")
       
 18391         special(SPC_MOD)
       
 18392         prompt("Input M")
       
 18393     }
       
 18394     field(INPN, DBF_INLINK) {
       
 18395         prompt("Input N")
       
 18396         promptgroup("10 - Common")
       
 18397         interest(1)
       
 18398         special(SPC_MOD)
       
 18399     }
       
 18400     field(INPO, DBF_INLINK) {
       
 18401         promptgroup("10 - Common")
       
 18402         interest(1)
       
 18403         special(SPC_MOD)
       
 18404         prompt("Input O")
       
 18405     }
       
 18406     field(INPP, DBF_INLINK) {
       
 18407         promptgroup("10 - Common")
       
 18408         interest(1)
       
 18409         special(SPC_MOD)
       
 18410         prompt("Input P")
       
 18411     }
       
 18412     field(OUTA, DBF_OUTLINK) {
       
 18413         interest(1)
       
 18414         special(SPC_MOD)
       
 18415         promptgroup("10 - Common")
       
 18416         prompt("Output A")
       
 18417     }
       
 18418     field(OUTB, DBF_OUTLINK) {
       
 18419         prompt("Output B")
       
 18420         promptgroup("10 - Common")
       
 18421         interest(1)
       
 18422         special(SPC_MOD)
       
 18423     }
       
 18424     field(OUTC, DBF_OUTLINK) {
       
 18425         prompt("Output C")
       
 18426         special(SPC_MOD)
       
 18427         interest(1)
       
 18428         promptgroup("10 - Common")
       
 18429     }
       
 18430     field(OUTD, DBF_OUTLINK) {
       
 18431         special(SPC_MOD)
       
 18432         interest(1)
       
 18433         promptgroup("10 - Common")
       
 18434         prompt("Output D")
       
 18435     }
       
 18436     field(OUTE, DBF_OUTLINK) {
       
 18437         prompt("Output E")
       
 18438         promptgroup("10 - Common")
       
 18439         interest(1)
       
 18440         special(SPC_MOD)
       
 18441     }
       
 18442     field(OUTF, DBF_OUTLINK) {
       
 18443         interest(1)
       
 18444         special(SPC_MOD)
       
 18445         promptgroup("10 - Common")
       
 18446         prompt("Output F")
       
 18447     }
       
 18448     field(OUTG, DBF_OUTLINK) {
       
 18449         promptgroup("10 - Common")
       
 18450         interest(1)
       
 18451         special(SPC_MOD)
       
 18452         prompt("Output G")
       
 18453     }
       
 18454     field(OUTH, DBF_OUTLINK) {
       
 18455         promptgroup("10 - Common")
       
 18456         interest(1)
       
 18457         special(SPC_MOD)
       
 18458         prompt("Output H")
       
 18459     }
       
 18460     field(OUTI, DBF_OUTLINK) {
       
 18461         prompt("Output I")
       
 18462         special(SPC_MOD)
       
 18463         interest(1)
       
 18464         promptgroup("10 - Common")
       
 18465     }
       
 18466     field(OUTJ, DBF_OUTLINK) {
       
 18467         promptgroup("10 - Common")
       
 18468         interest(1)
       
 18469         special(SPC_MOD)
       
 18470         prompt("Output J")
       
 18471     }
       
 18472     field(OUTK, DBF_OUTLINK) {
       
 18473         prompt("Output K")
       
 18474         promptgroup("10 - Common")
       
 18475         interest(1)
       
 18476         special(SPC_MOD)
       
 18477     }
       
 18478     field(OUTL, DBF_OUTLINK) {
       
 18479         prompt("Output L")
       
 18480         interest(1)
       
 18481         special(SPC_MOD)
       
 18482         promptgroup("10 - Common")
       
 18483     }
       
 18484     field(OUTM, DBF_OUTLINK) {
       
 18485         special(SPC_MOD)
       
 18486         interest(1)
       
 18487         promptgroup("10 - Common")
       
 18488         prompt("Output M")
       
 18489     }
       
 18490     field(OUTN, DBF_OUTLINK) {
       
 18491         interest(1)
       
 18492         promptgroup("10 - Common")
       
 18493         special(SPC_MOD)
       
 18494         prompt("Output N")
       
 18495     }
       
 18496     field(OUTO, DBF_OUTLINK) {
       
 18497         prompt("Output O")
       
 18498         interest(1)
       
 18499         promptgroup("10 - Common")
       
 18500         special(SPC_MOD)
       
 18501     }
       
 18502     field(OUTP, DBF_OUTLINK) {
       
 18503         promptgroup("10 - Common")
       
 18504         interest(1)
       
 18505         special(SPC_MOD)
       
 18506         prompt("Output P")
       
 18507     }
       
 18508     field(EGU, DBF_STRING) {
       
 18509         interest(1)
       
 18510         promptgroup("10 - Common")
       
 18511         prompt("Units Name")
       
 18512         size(16)
       
 18513     }
       
 18514     field(PREC, DBF_SHORT) {
       
 18515         prompt("Display Precision")
       
 18516         interest(1)
       
 18517         promptgroup("10 - Common")
       
 18518     }
       
 18519     field(A, DBF_DOUBLE) {
       
 18520         pp(TRUE)
       
 18521         special(SPC_MOD)
       
 18522         promptgroup("10 - Common")
       
 18523         prompt("Value of A")
       
 18524     }
       
 18525     field(B, DBF_DOUBLE) {
       
 18526         pp(TRUE)
       
 18527         prompt("Value of B")
       
 18528         promptgroup("10 - Common")
       
 18529         special(SPC_MOD)
       
 18530     }
       
 18531     field(C, DBF_DOUBLE) {
       
 18532         pp(TRUE)
       
 18533         promptgroup("10 - Common")
       
 18534         special(SPC_MOD)
       
 18535         prompt("Value of C")
       
 18536     }
       
 18537     field(D, DBF_DOUBLE) {
       
 18538         prompt("Value of D")
       
 18539         promptgroup("10 - Common")
       
 18540         special(SPC_MOD)
       
 18541         pp(TRUE)
       
 18542     }
       
 18543     field(E, DBF_DOUBLE) {
       
 18544         prompt("Value of E")
       
 18545         promptgroup("10 - Common")
       
 18546         special(SPC_MOD)
       
 18547         pp(TRUE)
       
 18548     }
       
 18549     field(F, DBF_DOUBLE) {
       
 18550         pp(TRUE)
       
 18551         promptgroup("10 - Common")
       
 18552         special(SPC_MOD)
       
 18553         prompt("Value of F")
       
 18554     }
       
 18555     field(G, DBF_DOUBLE) {
       
 18556         pp(TRUE)
       
 18557         special(SPC_MOD)
       
 18558         promptgroup("10 - Common")
       
 18559         prompt("Value of G")
       
 18560     }
       
 18561     field(H, DBF_DOUBLE) {
       
 18562         pp(TRUE)
       
 18563         special(SPC_MOD)
       
 18564         promptgroup("10 - Common")
       
 18565         prompt("Value of H")
       
 18566     }
       
 18567     field(I, DBF_DOUBLE) {
       
 18568         pp(TRUE)
       
 18569         prompt("Value of I")
       
 18570         promptgroup("10 - Common")
       
 18571         special(SPC_MOD)
       
 18572     }
       
 18573     field(J, DBF_DOUBLE) {
       
 18574         promptgroup("10 - Common")
       
 18575         special(SPC_MOD)
       
 18576         prompt("Value of J")
       
 18577         pp(TRUE)
       
 18578     }
       
 18579     field(K, DBF_DOUBLE) {
       
 18580         pp(TRUE)
       
 18581         promptgroup("10 - Common")
       
 18582         special(SPC_MOD)
       
 18583         prompt("Value of K")
       
 18584     }
       
 18585     field(L, DBF_DOUBLE) {
       
 18586         promptgroup("10 - Common")
       
 18587         special(SPC_MOD)
       
 18588         prompt("Value of L")
       
 18589         pp(TRUE)
       
 18590     }
       
 18591     field(M, DBF_DOUBLE) {
       
 18592         special(SPC_MOD)
       
 18593         promptgroup("10 - Common")
       
 18594         prompt("Value of M")
       
 18595         pp(TRUE)
       
 18596     }
       
 18597     field(N, DBF_DOUBLE) {
       
 18598         prompt("Value of N")
       
 18599         promptgroup("10 - Common")
       
 18600         special(SPC_MOD)
       
 18601         pp(TRUE)
       
 18602     }
       
 18603     field(O, DBF_DOUBLE) {
       
 18604         prompt("Value of O")
       
 18605         promptgroup("10 - Common")
       
 18606         special(SPC_MOD)
       
 18607         pp(TRUE)
       
 18608     }
       
 18609     field(P, DBF_DOUBLE) {
       
 18610         pp(TRUE)
       
 18611         prompt("Value of P")
       
 18612         promptgroup("10 - Common")
       
 18613         special(SPC_MOD)
       
 18614     }
       
 18615     field(LA, DBF_DOUBLE) {
       
 18616         prompt("Prev Value of A")
       
 18617         special(SPC_NOMOD)
       
 18618         interest(3)
       
 18619     }
       
 18620     field(LB, DBF_DOUBLE) {
       
 18621         prompt("Prev Value of B")
       
 18622         special(SPC_NOMOD)
       
 18623         interest(3)
       
 18624     }
       
 18625     field(LC, DBF_DOUBLE) {
       
 18626         prompt("Prev Value of C")
       
 18627         interest(3)
       
 18628         special(SPC_NOMOD)
       
 18629     }
       
 18630     field(LD, DBF_DOUBLE) {
       
 18631         special(SPC_NOMOD)
       
 18632         interest(3)
       
 18633         prompt("Prev Value of D")
       
 18634     }
       
 18635     field(LE, DBF_DOUBLE) {
       
 18636         special(SPC_NOMOD)
       
 18637         interest(3)
       
 18638         prompt("Prev Value of E")
       
 18639     }
       
 18640     field(LF, DBF_DOUBLE) {
       
 18641         prompt("Prev Value of F")
       
 18642         special(SPC_NOMOD)
       
 18643         interest(3)
       
 18644     }
       
 18645     field(LG, DBF_DOUBLE) {
       
 18646         interest(3)
       
 18647         special(SPC_NOMOD)
       
 18648         prompt("Prev Value of G")
       
 18649     }
       
 18650     field(LH, DBF_DOUBLE) {
       
 18651         interest(3)
       
 18652         special(SPC_NOMOD)
       
 18653         prompt("Prev Value of H")
       
 18654     }
       
 18655     field(LI, DBF_DOUBLE) {
       
 18656         prompt("Prev Value of I")
       
 18657         interest(3)
       
 18658         special(SPC_NOMOD)
       
 18659     }
       
 18660     field(LJ, DBF_DOUBLE) {
       
 18661         prompt("Prev Value of J")
       
 18662         special(SPC_NOMOD)
       
 18663         interest(3)
       
 18664     }
       
 18665     field(LK, DBF_DOUBLE) {
       
 18666         special(SPC_NOMOD)
       
 18667         interest(3)
       
 18668         prompt("Prev Value of K")
       
 18669     }
       
 18670     field(LL, DBF_DOUBLE) {
       
 18671         interest(3)
       
 18672         special(SPC_NOMOD)
       
 18673         prompt("Prev Value of L")
       
 18674     }
       
 18675     field(LM, DBF_DOUBLE) {
       
 18676         special(SPC_NOMOD)
       
 18677         interest(3)
       
 18678         prompt("Prev Value of M")
       
 18679     }
       
 18680     field(LN, DBF_DOUBLE) {
       
 18681         special(SPC_NOMOD)
       
 18682         interest(3)
       
 18683         prompt("Prev Value of N")
       
 18684     }
       
 18685     field(LO, DBF_DOUBLE) {
       
 18686         interest(3)
       
 18687         special(SPC_NOMOD)
       
 18688         prompt("Prev Value of O")
       
 18689     }
       
 18690     field(LP, DBF_DOUBLE) {
       
 18691         prompt("Prev Value of P")
       
 18692         interest(3)
       
 18693         special(SPC_NOMOD)
       
 18694     }
       
 18695     field(RPCA, DBF_NOACCESS) {
       
 18696         special(SPC_NOMOD)
       
 18697         interest(4)
       
 18698         prompt("Postfix Calc A")
       
 18699         extra("unsigned char rpca[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18700     }
       
 18701     field(RPCB, DBF_NOACCESS) {
       
 18702         extra("unsigned char rpcb[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18703         prompt("Postfix Calc B")
       
 18704         special(SPC_NOMOD)
       
 18705         interest(4)
       
 18706     }
       
 18707     field(RPCC, DBF_NOACCESS) {
       
 18708         special(SPC_NOMOD)
       
 18709         interest(4)
       
 18710         prompt("Postfix Calc C")
       
 18711         extra("unsigned char rpcc[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18712     }
       
 18713     field(RPCD, DBF_NOACCESS) {
       
 18714         special(SPC_NOMOD)
       
 18715         interest(4)
       
 18716         prompt("Postfix Calc D")
       
 18717         extra("unsigned char rpcd[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18718     }
       
 18719     field(RPCE, DBF_NOACCESS) {
       
 18720         interest(4)
       
 18721         special(SPC_NOMOD)
       
 18722         prompt("Postfix Calc E")
       
 18723         extra("unsigned char rpce[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18724     }
       
 18725     field(RPCF, DBF_NOACCESS) {
       
 18726         interest(4)
       
 18727         special(SPC_NOMOD)
       
 18728         prompt("Postfix Calc F")
       
 18729         extra("unsigned char rpcf[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18730     }
       
 18731     field(RPCG, DBF_NOACCESS) {
       
 18732         interest(4)
       
 18733         special(SPC_NOMOD)
       
 18734         prompt("Postfix Calc G")
       
 18735         extra("unsigned char rpcg[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18736     }
       
 18737     field(RPCH, DBF_NOACCESS) {
       
 18738         prompt("Postfix Calc H")
       
 18739         interest(4)
       
 18740         special(SPC_NOMOD)
       
 18741         extra("unsigned char rpch[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18742     }
       
 18743     field(RPCI, DBF_NOACCESS) {
       
 18744         prompt("Postfix Calc I")
       
 18745         special(SPC_NOMOD)
       
 18746         interest(4)
       
 18747         extra("unsigned char rpci[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18748     }
       
 18749     field(RPCJ, DBF_NOACCESS) {
       
 18750         prompt("Postfix Calc J")
       
 18751         interest(4)
       
 18752         special(SPC_NOMOD)
       
 18753         extra("unsigned char rpcj[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18754     }
       
 18755     field(RPCK, DBF_NOACCESS) {
       
 18756         extra("unsigned char rpck[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18757         prompt("Postfix Calc K")
       
 18758         special(SPC_NOMOD)
       
 18759         interest(4)
       
 18760     }
       
 18761     field(RPCL, DBF_NOACCESS) {
       
 18762         extra("unsigned char rpcl[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18763         prompt("Postfix Calc L")
       
 18764         interest(4)
       
 18765         special(SPC_NOMOD)
       
 18766     }
       
 18767     field(RPCM, DBF_NOACCESS) {
       
 18768         interest(4)
       
 18769         special(SPC_NOMOD)
       
 18770         prompt("Postfix Calc M")
       
 18771         extra("unsigned char rpcm[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18772     }
       
 18773     field(RPCN, DBF_NOACCESS) {
       
 18774         extra("unsigned char rpcn[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18775         prompt("Postfix Calc N")
       
 18776         interest(4)
       
 18777         special(SPC_NOMOD)
       
 18778     }
       
 18779     field(RPCO, DBF_NOACCESS) {
       
 18780         extra("unsigned char rpco[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18781         special(SPC_NOMOD)
       
 18782         interest(4)
       
 18783         prompt("Postfix Calc O")
       
 18784     }
       
 18785     field(RPCP, DBF_NOACCESS) {
       
 18786         interest(4)
       
 18787         special(SPC_NOMOD)
       
 18788         prompt("Postfix Calc P")
       
 18789         extra("unsigned char rpcp[SCALC_INFIX_TO_POSTFIX_SIZE(120)]")
       
 18790     }
       
 18791     field(CMTA, DBF_STRING) {
       
 18792         prompt("Comment A")
       
 18793         promptgroup("10 - Common")
       
 18794         size(39)
       
 18795     }
       
 18796     field(CMTB, DBF_STRING) {
       
 18797         size(39)
       
 18798         prompt("Comment B")
       
 18799         promptgroup("10 - Common")
       
 18800     }
       
 18801     field(CMTC, DBF_STRING) {
       
 18802         size(39)
       
 18803         prompt("Comment C")
       
 18804         promptgroup("10 - Common")
       
 18805     }
       
 18806     field(CMTD, DBF_STRING) {
       
 18807         promptgroup("10 - Common")
       
 18808         prompt("Comment D")
       
 18809         size(39)
       
 18810     }
       
 18811     field(CMTE, DBF_STRING) {
       
 18812         prompt("Comment E")
       
 18813         promptgroup("10 - Common")
       
 18814         size(39)
       
 18815     }
       
 18816     field(CMTF, DBF_STRING) {
       
 18817         promptgroup("10 - Common")
       
 18818         prompt("Comment F")
       
 18819         size(39)
       
 18820     }
       
 18821     field(CMTG, DBF_STRING) {
       
 18822         size(39)
       
 18823         prompt("Comment G")
       
 18824         promptgroup("10 - Common")
       
 18825     }
       
 18826     field(CMTH, DBF_STRING) {
       
 18827         promptgroup("10 - Common")
       
 18828         prompt("Comment H")
       
 18829         size(39)
       
 18830     }
       
 18831     field(CMTI, DBF_STRING) {
       
 18832         promptgroup("10 - Common")
       
 18833         prompt("Comment I")
       
 18834         size(39)
       
 18835     }
       
 18836     field(CMTJ, DBF_STRING) {
       
 18837         size(39)
       
 18838         prompt("Comment J")
       
 18839         promptgroup("10 - Common")
       
 18840     }
       
 18841     field(CMTK, DBF_STRING) {
       
 18842         promptgroup("10 - Common")
       
 18843         prompt("Comment K")
       
 18844         size(39)
       
 18845     }
       
 18846     field(CMTL, DBF_STRING) {
       
 18847         size(39)
       
 18848         prompt("Comment L")
       
 18849         promptgroup("10 - Common")
       
 18850     }
       
 18851     field(CMTM, DBF_STRING) {
       
 18852         size(39)
       
 18853         prompt("Comment M")
       
 18854         promptgroup("10 - Common")
       
 18855     }
       
 18856     field(CMTN, DBF_STRING) {
       
 18857         size(39)
       
 18858         prompt("Comment N")
       
 18859         promptgroup("10 - Common")
       
 18860     }
       
 18861     field(CMTO, DBF_STRING) {
       
 18862         size(39)
       
 18863         prompt("Comment O")
       
 18864         promptgroup("10 - Common")
       
 18865     }
       
 18866     field(CMTP, DBF_STRING) {
       
 18867         promptgroup("10 - Common")
       
 18868         prompt("Comment P")
       
 18869         size(39)
       
 18870     }
       
 18871     field(MAP, DBF_SHORT) {
       
 18872         prompt("Input bitmap")
       
 18873         interest(3)
       
 18874         promptgroup("10 - Common")
       
 18875     }
       
 18876     field(IAV, DBF_MENU) {
       
 18877         menu(transformIAV)
       
 18878         interest(1)
       
 18879         special(SPC_NOMOD)
       
 18880         prompt("Input link valid")
       
 18881         initial("1")
       
 18882     }
       
 18883     field(IBV, DBF_MENU) {
       
 18884         initial("1")
       
 18885         menu(transformIAV)
       
 18886         prompt("Input link valid")
       
 18887         interest(1)
       
 18888         special(SPC_NOMOD)
       
 18889     }
       
 18890     field(ICV, DBF_MENU) {
       
 18891         initial("1")
       
 18892         special(SPC_NOMOD)
       
 18893         interest(1)
       
 18894         prompt("Input link valid")
       
 18895         menu(transformIAV)
       
 18896     }
       
 18897     field(IDV, DBF_MENU) {
       
 18898         menu(transformIAV)
       
 18899         prompt("Input link valid")
       
 18900         interest(1)
       
 18901         special(SPC_NOMOD)
       
 18902         initial("1")
       
 18903     }
       
 18904     field(IEV, DBF_MENU) {
       
 18905         interest(1)
       
 18906         special(SPC_NOMOD)
       
 18907         prompt("Input link valid")
       
 18908         menu(transformIAV)
       
 18909         initial("1")
       
 18910     }
       
 18911     field(IFV, DBF_MENU) {
       
 18912         initial("1")
       
 18913         menu(transformIAV)
       
 18914         interest(1)
       
 18915         special(SPC_NOMOD)
       
 18916         prompt("Input link valid")
       
 18917     }
       
 18918     field(IGV, DBF_MENU) {
       
 18919         menu(transformIAV)
       
 18920         special(SPC_NOMOD)
       
 18921         interest(1)
       
 18922         prompt("Input link valid")
       
 18923         initial("1")
       
 18924     }
       
 18925     field(IHV, DBF_MENU) {
       
 18926         initial("1")
       
 18927         special(SPC_NOMOD)
       
 18928         interest(1)
       
 18929         prompt("Input link valid")
       
 18930         menu(transformIAV)
       
 18931     }
       
 18932     field(IIV, DBF_MENU) {
       
 18933         menu(transformIAV)
       
 18934         special(SPC_NOMOD)
       
 18935         interest(1)
       
 18936         prompt("Input link valid")
       
 18937         initial("1")
       
 18938     }
       
 18939     field(IJV, DBF_MENU) {
       
 18940         menu(transformIAV)
       
 18941         special(SPC_NOMOD)
       
 18942         interest(1)
       
 18943         prompt("Input link valid")
       
 18944         initial("1")
       
 18945     }
       
 18946     field(IKV, DBF_MENU) {
       
 18947         initial("1")
       
 18948         interest(1)
       
 18949         special(SPC_NOMOD)
       
 18950         prompt("Input link valid")
       
 18951         menu(transformIAV)
       
 18952     }
       
 18953     field(ILV, DBF_MENU) {
       
 18954         initial("1")
       
 18955         prompt("Input link valid")
       
 18956         special(SPC_NOMOD)
       
 18957         interest(1)
       
 18958         menu(transformIAV)
       
 18959     }
       
 18960     field(IMV, DBF_MENU) {
       
 18961         initial("1")
       
 18962         menu(transformIAV)
       
 18963         prompt("Input link valid")
       
 18964         interest(1)
       
 18965         special(SPC_NOMOD)
       
 18966     }
       
 18967     field(INV, DBF_MENU) {
       
 18968         initial("1")
       
 18969         prompt("Input link valid")
       
 18970         interest(1)
       
 18971         special(SPC_NOMOD)
       
 18972         menu(transformIAV)
       
 18973     }
       
 18974     field(IOV, DBF_MENU) {
       
 18975         menu(transformIAV)
       
 18976         interest(1)
       
 18977         special(SPC_NOMOD)
       
 18978         prompt("Input link valid")
       
 18979         initial("1")
       
 18980     }
       
 18981     field(IPV, DBF_MENU) {
       
 18982         initial("1")
       
 18983         prompt("Input link valid")
       
 18984         special(SPC_NOMOD)
       
 18985         interest(1)
       
 18986         menu(transformIAV)
       
 18987     }
       
 18988     field(OAV, DBF_MENU) {
       
 18989         initial("1")
       
 18990         menu(transformIAV)
       
 18991         interest(1)
       
 18992         special(SPC_NOMOD)
       
 18993         prompt("Output link valid")
       
 18994     }
       
 18995     field(OBV, DBF_MENU) {
       
 18996         menu(transformIAV)
       
 18997         interest(1)
       
 18998         special(SPC_NOMOD)
       
 18999         prompt("Output link valid")
       
 19000         initial("1")
       
 19001     }
       
 19002     field(OCV, DBF_MENU) {
       
 19003         interest(1)
       
 19004         special(SPC_NOMOD)
       
 19005         prompt("Output link valid")
       
 19006         menu(transformIAV)
       
 19007         initial("1")
       
 19008     }
       
 19009     field(ODV, DBF_MENU) {
       
 19010         initial("1")
       
 19011         interest(1)
       
 19012         special(SPC_NOMOD)
       
 19013         prompt("Output link valid")
       
 19014         menu(transformIAV)
       
 19015     }
       
 19016     field(OEV, DBF_MENU) {
       
 19017         initial("1")
       
 19018         menu(transformIAV)
       
 19019         prompt("Output link valid")
       
 19020         special(SPC_NOMOD)
       
 19021         interest(1)
       
 19022     }
       
 19023     field(OFV, DBF_MENU) {
       
 19024         special(SPC_NOMOD)
       
 19025         interest(1)
       
 19026         prompt("Output link valid")
       
 19027         menu(transformIAV)
       
 19028         initial("1")
       
 19029     }
       
 19030     field(OGV, DBF_MENU) {
       
 19031         menu(transformIAV)
       
 19032         prompt("Output link valid")
       
 19033         interest(1)
       
 19034         special(SPC_NOMOD)
       
 19035         initial("1")
       
 19036     }
       
 19037     field(OHV, DBF_MENU) {
       
 19038         initial("1")
       
 19039         menu(transformIAV)
       
 19040         interest(1)
       
 19041         special(SPC_NOMOD)
       
 19042         prompt("Output link valid")
       
 19043     }
       
 19044     field(OIV, DBF_MENU) {
       
 19045         interest(1)
       
 19046         special(SPC_NOMOD)
       
 19047         prompt("Output link valid")
       
 19048         menu(transformIAV)
       
 19049         initial("1")
       
 19050     }
       
 19051     field(OJV, DBF_MENU) {
       
 19052         prompt("Output link valid")
       
 19053         interest(1)
       
 19054         special(SPC_NOMOD)
       
 19055         menu(transformIAV)
       
 19056         initial("1")
       
 19057     }
       
 19058     field(OKV, DBF_MENU) {
       
 19059         menu(transformIAV)
       
 19060         prompt("Output link valid")
       
 19061         interest(1)
       
 19062         special(SPC_NOMOD)
       
 19063         initial("1")
       
 19064     }
       
 19065     field(OLV, DBF_MENU) {
       
 19066         initial("1")
       
 19067         prompt("Output link valid")
       
 19068         special(SPC_NOMOD)
       
 19069         interest(1)
       
 19070         menu(transformIAV)
       
 19071     }
       
 19072     field(OMV, DBF_MENU) {
       
 19073         initial("1")
       
 19074         interest(1)
       
 19075         special(SPC_NOMOD)
       
 19076         prompt("Output link valid")
       
 19077         menu(transformIAV)
       
 19078     }
       
 19079     field(ONV, DBF_MENU) {
       
 19080         initial("1")
       
 19081         prompt("Output link valid")
       
 19082         interest(1)
       
 19083         special(SPC_NOMOD)
       
 19084         menu(transformIAV)
       
 19085     }
       
 19086     field(OOV, DBF_MENU) {
       
 19087         initial("1")
       
 19088         menu(transformIAV)
       
 19089         interest(1)
       
 19090         special(SPC_NOMOD)
       
 19091         prompt("Output link valid")
       
 19092     }
       
 19093     field(OPV, DBF_MENU) {
       
 19094         prompt("Output link valid")
       
 19095         interest(1)
       
 19096         special(SPC_NOMOD)
       
 19097         menu(transformIAV)
       
 19098         initial("1")
       
 19099     }
       
 19100 }
       
 19101 recordtype(mbbi) {
       
 19102     %#include "epicsTypes.h"
       
 19103     %#include "link.h"
       
 19104     %#include "epicsMutex.h"
       
 19105     %#include "ellLib.h"
       
 19106     %#include "epicsTime.h"
       
 19107     %#include "callback.h"
       
 19108     field(NAME, DBF_STRING) {
       
 19109         size(61)
       
 19110         special(SPC_NOMOD)
       
 19111         prompt("Record Name")
       
 19112     }
       
 19113     field(DESC, DBF_STRING) {
       
 19114         size(41)
       
 19115         prompt("Descriptor")
       
 19116         promptgroup("10 - Common")
       
 19117     }
       
 19118     field(ASG, DBF_STRING) {
       
 19119         promptgroup("10 - Common")
       
 19120         special(SPC_AS)
       
 19121         prompt("Access Security Group")
       
 19122         size(29)
       
 19123     }
       
 19124     field(SCAN, DBF_MENU) {
       
 19125         prompt("Scan Mechanism")
       
 19126         promptgroup("20 - Scan")
       
 19127         interest(1)
       
 19128         special(SPC_SCAN)
       
 19129         menu(menuScan)
       
 19130     }
       
 19131     field(PINI, DBF_MENU) {
       
 19132         menu(menuPini)
       
 19133         prompt("Process at iocInit")
       
 19134         interest(1)
       
 19135         promptgroup("20 - Scan")
       
 19136     }
       
 19137     field(PHAS, DBF_SHORT) {
       
 19138         prompt("Scan Phase")
       
 19139         promptgroup("20 - Scan")
       
 19140         interest(1)
       
 19141         special(SPC_SCAN)
       
 19142     }
       
 19143     field(EVNT, DBF_STRING) {
       
 19144         special(SPC_SCAN)
       
 19145         interest(1)
       
 19146         promptgroup("20 - Scan")
       
 19147         prompt("Event Name")
       
 19148         size(40)
       
 19149     }
       
 19150     field(TSE, DBF_SHORT) {
       
 19151         prompt("Time Stamp Event")
       
 19152         interest(1)
       
 19153         promptgroup("20 - Scan")
       
 19154     }
       
 19155     field(TSEL, DBF_INLINK) {
       
 19156         interest(1)
       
 19157         promptgroup("20 - Scan")
       
 19158         prompt("Time Stamp Link")
       
 19159     }
       
 19160     field(DTYP, DBF_DEVICE) {
       
 19161         prompt("Device Type")
       
 19162         interest(1)
       
 19163         promptgroup("10 - Common")
       
 19164     }
       
 19165     field(DISV, DBF_SHORT) {
       
 19166         prompt("Disable Value")
       
 19167         promptgroup("20 - Scan")
       
 19168         initial("1")
       
 19169     }
       
 19170     field(DISA, DBF_SHORT) {
       
 19171         prompt("Disable")
       
 19172     }
       
 19173     field(SDIS, DBF_INLINK) {
       
 19174         interest(1)
       
 19175         promptgroup("20 - Scan")
       
 19176         prompt("Scanning Disable")
       
 19177     }
       
 19178     field(MLOK, DBF_NOACCESS) {
       
 19179         extra("epicsMutexId        mlok")
       
 19180         interest(4)
       
 19181         special(SPC_NOMOD)
       
 19182         prompt("Monitor lock")
       
 19183     }
       
 19184     field(MLIS, DBF_NOACCESS) {
       
 19185         extra("ELLLIST             mlis")
       
 19186         prompt("Monitor List")
       
 19187         special(SPC_NOMOD)
       
 19188         interest(4)
       
 19189     }
       
 19190     field(BKLNK, DBF_NOACCESS) {
       
 19191         prompt("Backwards link tracking")
       
 19192         special(SPC_NOMOD)
       
 19193         interest(4)
       
 19194         extra("ELLLIST             bklnk")
       
 19195     }
       
 19196     field(DISP, DBF_UCHAR) {
       
 19197         prompt("Disable putField")
       
 19198     }
       
 19199     field(PROC, DBF_UCHAR) {
       
 19200         prompt("Force Processing")
       
 19201         interest(3)
       
 19202         pp(TRUE)
       
 19203     }
       
 19204     field(STAT, DBF_MENU) {
       
 19205         initial("UDF")
       
 19206         prompt("Alarm Status")
       
 19207         special(SPC_NOMOD)
       
 19208         menu(menuAlarmStat)
       
 19209     }
       
 19210     field(SEVR, DBF_MENU) {
       
 19211         special(SPC_NOMOD)
       
 19212         prompt("Alarm Severity")
       
 19213         menu(menuAlarmSevr)
       
 19214     }
       
 19215     field(NSTA, DBF_MENU) {
       
 19216         menu(menuAlarmStat)
       
 19217         interest(2)
       
 19218         special(SPC_NOMOD)
       
 19219         prompt("New Alarm Status")
       
 19220     }
       
 19221     field(NSEV, DBF_MENU) {
       
 19222         prompt("New Alarm Severity")
       
 19223         interest(2)
       
 19224         special(SPC_NOMOD)
       
 19225         menu(menuAlarmSevr)
       
 19226     }
       
 19227     field(ACKS, DBF_MENU) {
       
 19228         menu(menuAlarmSevr)
       
 19229         interest(2)
       
 19230         special(SPC_NOMOD)
       
 19231         prompt("Alarm Ack Severity")
       
 19232     }
       
 19233     field(ACKT, DBF_MENU) {
       
 19234         initial("YES")
       
 19235         menu(menuYesNo)
       
 19236         special(SPC_NOMOD)
       
 19237         interest(2)
       
 19238         promptgroup("70 - Alarm")
       
 19239         prompt("Alarm Ack Transient")
       
 19240     }
       
 19241     field(DISS, DBF_MENU) {
       
 19242         menu(menuAlarmSevr)
       
 19243         prompt("Disable Alarm Sevrty")
       
 19244         interest(1)
       
 19245         promptgroup("70 - Alarm")
       
 19246     }
       
 19247     field(LCNT, DBF_UCHAR) {
       
 19248         prompt("Lock Count")
       
 19249         special(SPC_NOMOD)
       
 19250         interest(2)
       
 19251     }
       
 19252     field(PACT, DBF_UCHAR) {
       
 19253         interest(1)
       
 19254         special(SPC_NOMOD)
       
 19255         prompt("Record active")
       
 19256     }
       
 19257     field(PUTF, DBF_UCHAR) {
       
 19258         prompt("dbPutField process")
       
 19259         interest(1)
       
 19260         special(SPC_NOMOD)
       
 19261     }
       
 19262     field(RPRO, DBF_UCHAR) {
       
 19263         prompt("Reprocess ")
       
 19264         special(SPC_NOMOD)
       
 19265         interest(1)
       
 19266     }
       
 19267     field(ASP, DBF_NOACCESS) {
       
 19268         extra("struct asgMember    *asp")
       
 19269         special(SPC_NOMOD)
       
 19270         interest(4)
       
 19271         prompt("Access Security Pvt")
       
 19272     }
       
 19273     field(PPN, DBF_NOACCESS) {
       
 19274         prompt("pprocessNotify")
       
 19275         interest(4)
       
 19276         special(SPC_NOMOD)
       
 19277         extra("struct processNotify *ppn")
       
 19278     }
       
 19279     field(PPNR, DBF_NOACCESS) {
       
 19280         extra("struct processNotifyRecord *ppnr")
       
 19281         interest(4)
       
 19282         special(SPC_NOMOD)
       
 19283         prompt("pprocessNotifyRecord")
       
 19284     }
       
 19285     field(SPVT, DBF_NOACCESS) {
       
 19286         extra("struct scan_element *spvt")
       
 19287         special(SPC_NOMOD)
       
 19288         interest(4)
       
 19289         prompt("Scan Private")
       
 19290     }
       
 19291     field(RSET, DBF_NOACCESS) {
       
 19292         prompt("Address of RSET")
       
 19293         special(SPC_NOMOD)
       
 19294         interest(4)
       
 19295         extra("struct typed_rset   *rset")
       
 19296     }
       
 19297     field(DSET, DBF_NOACCESS) {
       
 19298         extra("struct dset         *dset")
       
 19299         special(SPC_NOMOD)
       
 19300         interest(4)
       
 19301         prompt("DSET address")
       
 19302     }
       
 19303     field(DPVT, DBF_NOACCESS) {
       
 19304         extra("void                *dpvt")
       
 19305         interest(4)
       
 19306         special(SPC_NOMOD)
       
 19307         prompt("Device Private")
       
 19308     }
       
 19309     field(RDES, DBF_NOACCESS) {
       
 19310         extra("struct dbRecordType *rdes")
       
 19311         prompt("Address of dbRecordType")
       
 19312         special(SPC_NOMOD)
       
 19313         interest(4)
       
 19314     }
       
 19315     field(LSET, DBF_NOACCESS) {
       
 19316         prompt("Lock Set")
       
 19317         special(SPC_NOMOD)
       
 19318         interest(4)
       
 19319         extra("struct lockRecord   *lset")
       
 19320     }
       
 19321     field(PRIO, DBF_MENU) {
       
 19322         menu(menuPriority)
       
 19323         prompt("Scheduling Priority")
       
 19324         interest(1)
       
 19325         special(SPC_SCAN)
       
 19326         promptgroup("20 - Scan")
       
 19327     }
       
 19328     field(TPRO, DBF_UCHAR) {
       
 19329         prompt("Trace Processing")
       
 19330     }
       
 19331     field(BKPT, DBF_NOACCESS) {
       
 19332         extra("char                bkpt")
       
 19333         prompt("Break Point")
       
 19334         special(SPC_NOMOD)
       
 19335         interest(1)
       
 19336     }
       
 19337     field(UDF, DBF_UCHAR) {
       
 19338         initial("1")
       
 19339         pp(TRUE)
       
 19340         promptgroup("10 - Common")
       
 19341         interest(1)
       
 19342         prompt("Undefined")
       
 19343     }
       
 19344     field(UDFS, DBF_MENU) {
       
 19345         menu(menuAlarmSevr)
       
 19346         prompt("Undefined Alarm Sevrty")
       
 19347         promptgroup("70 - Alarm")
       
 19348         interest(1)
       
 19349         initial("INVALID")
       
 19350     }
       
 19351     field(TIME, DBF_NOACCESS) {
       
 19352         extra("epicsTimeStamp      time")
       
 19353         prompt("Time")
       
 19354         special(SPC_NOMOD)
       
 19355         interest(2)
       
 19356     }
       
 19357     field(FLNK, DBF_FWDLINK) {
       
 19358         interest(1)
       
 19359         promptgroup("20 - Scan")
       
 19360         prompt("Forward Process Link")
       
 19361     }
       
 19362     field(VAL, DBF_ENUM) {
       
 19363         pp(TRUE)
       
 19364         prompt("Current Value")
       
 19365         promptgroup("40 - Input")
       
 19366         asl(ASL0)
       
 19367     }
       
 19368     field(NOBT, DBF_USHORT) {
       
 19369         promptgroup("40 - Input")
       
 19370         interest(1)
       
 19371         special(SPC_NOMOD)
       
 19372         prompt("Number of Bits")
       
 19373     }
       
 19374     field(INP, DBF_INLINK) {
       
 19375         promptgroup("40 - Input")
       
 19376         interest(1)
       
 19377         prompt("Input Specification")
       
 19378     }
       
 19379     field(ZRVL, DBF_ULONG) {
       
 19380         base(HEX)
       
 19381         pp(TRUE)
       
 19382         interest(1)
       
 19383         promptgroup("41 - Input 0-7")
       
 19384         special(SPC_MOD)
       
 19385         prompt("Zero Value")
       
 19386     }
       
 19387     field(ONVL, DBF_ULONG) {
       
 19388         interest(1)
       
 19389         special(SPC_MOD)
       
 19390         promptgroup("41 - Input 0-7")
       
 19391         prompt("One Value")
       
 19392         base(HEX)
       
 19393         pp(TRUE)
       
 19394     }
       
 19395     field(TWVL, DBF_ULONG) {
       
 19396         base(HEX)
       
 19397         pp(TRUE)
       
 19398         promptgroup("41 - Input 0-7")
       
 19399         interest(1)
       
 19400         special(SPC_MOD)
       
 19401         prompt("Two Value")
       
 19402     }
       
 19403     field(THVL, DBF_ULONG) {
       
 19404         prompt("Three Value")
       
 19405         interest(1)
       
 19406         special(SPC_MOD)
       
 19407         promptgroup("41 - Input 0-7")
       
 19408         base(HEX)
       
 19409         pp(TRUE)
       
 19410     }
       
 19411     field(FRVL, DBF_ULONG) {
       
 19412         base(HEX)
       
 19413         pp(TRUE)
       
 19414         interest(1)
       
 19415         special(SPC_MOD)
       
 19416         promptgroup("41 - Input 0-7")
       
 19417         prompt("Four Value")
       
 19418     }
       
 19419     field(FVVL, DBF_ULONG) {
       
 19420         pp(TRUE)
       
 19421         base(HEX)
       
 19422         interest(1)
       
 19423         special(SPC_MOD)
       
 19424         promptgroup("41 - Input 0-7")
       
 19425         prompt("Five Value")
       
 19426     }
       
 19427     field(SXVL, DBF_ULONG) {
       
 19428         base(HEX)
       
 19429         pp(TRUE)
       
 19430         interest(1)
       
 19431         promptgroup("41 - Input 0-7")
       
 19432         special(SPC_MOD)
       
 19433         prompt("Six Value")
       
 19434     }
       
 19435     field(SVVL, DBF_ULONG) {
       
 19436         prompt("Seven Value")
       
 19437         interest(1)
       
 19438         special(SPC_MOD)
       
 19439         promptgroup("41 - Input 0-7")
       
 19440         pp(TRUE)
       
 19441         base(HEX)
       
 19442     }
       
 19443     field(EIVL, DBF_ULONG) {
       
 19444         prompt("Eight Value")
       
 19445         special(SPC_MOD)
       
 19446         interest(1)
       
 19447         promptgroup("42 - Input 8-15")
       
 19448         pp(TRUE)
       
 19449         base(HEX)
       
 19450     }
       
 19451     field(NIVL, DBF_ULONG) {
       
 19452         interest(1)
       
 19453         special(SPC_MOD)
       
 19454         promptgroup("42 - Input 8-15")
       
 19455         prompt("Nine Value")
       
 19456         pp(TRUE)
       
 19457         base(HEX)
       
 19458     }
       
 19459     field(TEVL, DBF_ULONG) {
       
 19460         special(SPC_MOD)
       
 19461         interest(1)
       
 19462         promptgroup("42 - Input 8-15")
       
 19463         prompt("Ten Value")
       
 19464         base(HEX)
       
 19465         pp(TRUE)
       
 19466     }
       
 19467     field(ELVL, DBF_ULONG) {
       
 19468         pp(TRUE)
       
 19469         base(HEX)
       
 19470         prompt("Eleven Value")
       
 19471         interest(1)
       
 19472         special(SPC_MOD)
       
 19473         promptgroup("42 - Input 8-15")
       
 19474     }
       
 19475     field(TVVL, DBF_ULONG) {
       
 19476         prompt("Twelve Value")
       
 19477         interest(1)
       
 19478         promptgroup("42 - Input 8-15")
       
 19479         special(SPC_MOD)
       
 19480         base(HEX)
       
 19481         pp(TRUE)
       
 19482     }
       
 19483     field(TTVL, DBF_ULONG) {
       
 19484         pp(TRUE)
       
 19485         base(HEX)
       
 19486         prompt("Thirteen Value")
       
 19487         special(SPC_MOD)
       
 19488         interest(1)
       
 19489         promptgroup("42 - Input 8-15")
       
 19490     }
       
 19491     field(FTVL, DBF_ULONG) {
       
 19492         base(HEX)
       
 19493         pp(TRUE)
       
 19494         special(SPC_MOD)
       
 19495         interest(1)
       
 19496         promptgroup("42 - Input 8-15")
       
 19497         prompt("Fourteen Value")
       
 19498     }
       
 19499     field(FFVL, DBF_ULONG) {
       
 19500         base(HEX)
       
 19501         pp(TRUE)
       
 19502         prompt("Fifteen Value")
       
 19503         interest(1)
       
 19504         special(SPC_MOD)
       
 19505         promptgroup("42 - Input 8-15")
       
 19506     }
       
 19507     field(ZRST, DBF_STRING) {
       
 19508         interest(1)
       
 19509         special(SPC_MOD)
       
 19510         promptgroup("81 - Display 0-7")
       
 19511         prompt("Zero String")
       
 19512         pp(TRUE)
       
 19513         size(26)
       
 19514     }
       
 19515     field(ONST, DBF_STRING) {
       
 19516         promptgroup("81 - Display 0-7")
       
 19517         interest(1)
       
 19518         special(SPC_MOD)
       
 19519         prompt("One String")
       
 19520         pp(TRUE)
       
 19521         size(26)
       
 19522     }
       
 19523     field(TWST, DBF_STRING) {
       
 19524         special(SPC_MOD)
       
 19525         interest(1)
       
 19526         promptgroup("81 - Display 0-7")
       
 19527         prompt("Two String")
       
 19528         size(26)
       
 19529         pp(TRUE)
       
 19530     }
       
 19531     field(THST, DBF_STRING) {
       
 19532         pp(TRUE)
       
 19533         size(26)
       
 19534         interest(1)
       
 19535         special(SPC_MOD)
       
 19536         promptgroup("81 - Display 0-7")
       
 19537         prompt("Three String")
       
 19538     }
       
 19539     field(FRST, DBF_STRING) {
       
 19540         prompt("Four String")
       
 19541         interest(1)
       
 19542         promptgroup("81 - Display 0-7")
       
 19543         special(SPC_MOD)
       
 19544         size(26)
       
 19545         pp(TRUE)
       
 19546     }
       
 19547     field(FVST, DBF_STRING) {
       
 19548         pp(TRUE)
       
 19549         size(26)
       
 19550         prompt("Five String")
       
 19551         special(SPC_MOD)
       
 19552         interest(1)
       
 19553         promptgroup("81 - Display 0-7")
       
 19554     }
       
 19555     field(SXST, DBF_STRING) {
       
 19556         special(SPC_MOD)
       
 19557         interest(1)
       
 19558         promptgroup("81 - Display 0-7")
       
 19559         prompt("Six String")
       
 19560         size(26)
       
 19561         pp(TRUE)
       
 19562     }
       
 19563     field(SVST, DBF_STRING) {
       
 19564         prompt("Seven String")
       
 19565         interest(1)
       
 19566         special(SPC_MOD)
       
 19567         promptgroup("81 - Display 0-7")
       
 19568         pp(TRUE)
       
 19569         size(26)
       
 19570     }
       
 19571     field(EIST, DBF_STRING) {
       
 19572         special(SPC_MOD)
       
 19573         interest(1)
       
 19574         promptgroup("82 - Display 8-15")
       
 19575         prompt("Eight String")
       
 19576         pp(TRUE)
       
 19577         size(26)
       
 19578     }
       
 19579     field(NIST, DBF_STRING) {
       
 19580         special(SPC_MOD)
       
 19581         interest(1)
       
 19582         promptgroup("82 - Display 8-15")
       
 19583         prompt("Nine String")
       
 19584         size(26)
       
 19585         pp(TRUE)
       
 19586     }
       
 19587     field(TEST, DBF_STRING) {
       
 19588         interest(1)
       
 19589         promptgroup("82 - Display 8-15")
       
 19590         special(SPC_MOD)
       
 19591         prompt("Ten String")
       
 19592         pp(TRUE)
       
 19593         size(26)
       
 19594     }
       
 19595     field(ELST, DBF_STRING) {
       
 19596         size(26)
       
 19597         pp(TRUE)
       
 19598         interest(1)
       
 19599         promptgroup("82 - Display 8-15")
       
 19600         special(SPC_MOD)
       
 19601         prompt("Eleven String")
       
 19602     }
       
 19603     field(TVST, DBF_STRING) {
       
 19604         interest(1)
       
 19605         promptgroup("82 - Display 8-15")
       
 19606         special(SPC_MOD)
       
 19607         prompt("Twelve String")
       
 19608         pp(TRUE)
       
 19609         size(26)
       
 19610     }
       
 19611     field(TTST, DBF_STRING) {
       
 19612         size(26)
       
 19613         pp(TRUE)
       
 19614         prompt("Thirteen String")
       
 19615         special(SPC_MOD)
       
 19616         interest(1)
       
 19617         promptgroup("82 - Display 8-15")
       
 19618     }
       
 19619     field(FTST, DBF_STRING) {
       
 19620         size(26)
       
 19621         pp(TRUE)
       
 19622         promptgroup("82 - Display 8-15")
       
 19623         interest(1)
       
 19624         special(SPC_MOD)
       
 19625         prompt("Fourteen String")
       
 19626     }
       
 19627     field(FFST, DBF_STRING) {
       
 19628         prompt("Fifteen String")
       
 19629         special(SPC_MOD)
       
 19630         interest(1)
       
 19631         promptgroup("82 - Display 8-15")
       
 19632         pp(TRUE)
       
 19633         size(26)
       
 19634     }
       
 19635     field(ZRSV, DBF_MENU) {
       
 19636         pp(TRUE)
       
 19637         interest(1)
       
 19638         promptgroup("71 - Alarm 0-7")
       
 19639         prompt("State Zero Severity")
       
 19640         menu(menuAlarmSevr)
       
 19641     }
       
 19642     field(ONSV, DBF_MENU) {
       
 19643         prompt("State One Severity")
       
 19644         promptgroup("71 - Alarm 0-7")
       
 19645         interest(1)
       
 19646         menu(menuAlarmSevr)
       
 19647         pp(TRUE)
       
 19648     }
       
 19649     field(TWSV, DBF_MENU) {
       
 19650         pp(TRUE)
       
 19651         prompt("State Two Severity")
       
 19652         promptgroup("71 - Alarm 0-7")
       
 19653         interest(1)
       
 19654         menu(menuAlarmSevr)
       
 19655     }
       
 19656     field(THSV, DBF_MENU) {
       
 19657         pp(TRUE)
       
 19658         prompt("State Three Severity")
       
 19659         promptgroup("71 - Alarm 0-7")
       
 19660         interest(1)
       
 19661         menu(menuAlarmSevr)
       
 19662     }
       
 19663     field(FRSV, DBF_MENU) {
       
 19664         pp(TRUE)
       
 19665         promptgroup("71 - Alarm 0-7")
       
 19666         interest(1)
       
 19667         prompt("State Four Severity")
       
 19668         menu(menuAlarmSevr)
       
 19669     }
       
 19670     field(FVSV, DBF_MENU) {
       
 19671         pp(TRUE)
       
 19672         menu(menuAlarmSevr)
       
 19673         promptgroup("71 - Alarm 0-7")
       
 19674         interest(1)
       
 19675         prompt("State Five Severity")
       
 19676     }
       
 19677     field(SXSV, DBF_MENU) {
       
 19678         interest(1)
       
 19679         promptgroup("71 - Alarm 0-7")
       
 19680         prompt("State Six Severity")
       
 19681         menu(menuAlarmSevr)
       
 19682         pp(TRUE)
       
 19683     }
       
 19684     field(SVSV, DBF_MENU) {
       
 19685         pp(TRUE)
       
 19686         menu(menuAlarmSevr)
       
 19687         interest(1)
       
 19688         promptgroup("71 - Alarm 0-7")
       
 19689         prompt("State Seven Severity")
       
 19690     }
       
 19691     field(EISV, DBF_MENU) {
       
 19692         menu(menuAlarmSevr)
       
 19693         prompt("State Eight Severity")
       
 19694         interest(1)
       
 19695         promptgroup("72 - Alarm 8-15")
       
 19696         pp(TRUE)
       
 19697     }
       
 19698     field(NISV, DBF_MENU) {
       
 19699         prompt("State Nine Severity")
       
 19700         interest(1)
       
 19701         promptgroup("72 - Alarm 8-15")
       
 19702         menu(menuAlarmSevr)
       
 19703         pp(TRUE)
       
 19704     }
       
 19705     field(TESV, DBF_MENU) {
       
 19706         pp(TRUE)
       
 19707         interest(1)
       
 19708         promptgroup("72 - Alarm 8-15")
       
 19709         prompt("State Ten Severity")
       
 19710         menu(menuAlarmSevr)
       
 19711     }
       
 19712     field(ELSV, DBF_MENU) {
       
 19713         pp(TRUE)
       
 19714         promptgroup("72 - Alarm 8-15")
       
 19715         interest(1)
       
 19716         prompt("State Eleven Severity")
       
 19717         menu(menuAlarmSevr)
       
 19718     }
       
 19719     field(TVSV, DBF_MENU) {
       
 19720         pp(TRUE)
       
 19721         menu(menuAlarmSevr)
       
 19722         prompt("State Twelve Severity")
       
 19723         interest(1)
       
 19724         promptgroup("72 - Alarm 8-15")
       
 19725     }
       
 19726     field(TTSV, DBF_MENU) {
       
 19727         pp(TRUE)
       
 19728         menu(menuAlarmSevr)
       
 19729         interest(1)
       
 19730         promptgroup("72 - Alarm 8-15")
       
 19731         prompt("State Thirteen Sevr")
       
 19732     }
       
 19733     field(FTSV, DBF_MENU) {
       
 19734         pp(TRUE)
       
 19735         interest(1)
       
 19736         promptgroup("72 - Alarm 8-15")
       
 19737         prompt("State Fourteen Sevr")
       
 19738         menu(menuAlarmSevr)
       
 19739     }
       
 19740     field(FFSV, DBF_MENU) {
       
 19741         pp(TRUE)
       
 19742         prompt("State Fifteen Severity")
       
 19743         interest(1)
       
 19744         promptgroup("72 - Alarm 8-15")
       
 19745         menu(menuAlarmSevr)
       
 19746     }
       
 19747     field(AFTC, DBF_DOUBLE) {
       
 19748         prompt("Alarm Filter Time Constant")
       
 19749         interest(1)
       
 19750         promptgroup("70 - Alarm")
       
 19751     }
       
 19752     field(AFVL, DBF_DOUBLE) {
       
 19753         special(SPC_NOMOD)
       
 19754         interest(3)
       
 19755         prompt("Alarm Filter Value")
       
 19756     }
       
 19757     field(UNSV, DBF_MENU) {
       
 19758         menu(menuAlarmSevr)
       
 19759         prompt("Unknown State Severity")
       
 19760         promptgroup("70 - Alarm")
       
 19761         interest(1)
       
 19762         pp(TRUE)
       
 19763     }
       
 19764     field(COSV, DBF_MENU) {
       
 19765         pp(TRUE)
       
 19766         prompt("Change of State Svr")
       
 19767         promptgroup("70 - Alarm")
       
 19768         interest(1)
       
 19769         menu(menuAlarmSevr)
       
 19770     }
       
 19771     field(RVAL, DBF_ULONG) {
       
 19772         prompt("Raw Value")
       
 19773         pp(TRUE)
       
 19774     }
       
 19775     field(ORAW, DBF_ULONG) {
       
 19776         interest(3)
       
 19777         special(SPC_NOMOD)
       
 19778         prompt("Prev Raw Value")
       
 19779     }
       
 19780     field(MASK, DBF_ULONG) {
       
 19781         special(SPC_NOMOD)
       
 19782         interest(1)
       
 19783         prompt("Hardware Mask")
       
 19784     }
       
 19785     field(MLST, DBF_USHORT) {
       
 19786         interest(3)
       
 19787         special(SPC_NOMOD)
       
 19788         prompt("Last Value Monitored")
       
 19789     }
       
 19790     field(LALM, DBF_USHORT) {
       
 19791         interest(3)
       
 19792         special(SPC_NOMOD)
       
 19793         prompt("Last Value Alarmed")
       
 19794     }
       
 19795     field(SDEF, DBF_SHORT) {
       
 19796         prompt("States Defined")
       
 19797         interest(3)
       
 19798         special(SPC_NOMOD)
       
 19799     }
       
 19800     field(SHFT, DBF_USHORT) {
       
 19801         interest(1)
       
 19802         promptgroup("40 - Input")
       
 19803         prompt("Shift")
       
 19804     }
       
 19805     field(SIOL, DBF_INLINK) {
       
 19806         prompt("Simulation Input Link")
       
 19807         promptgroup("90 - Simulate")
       
 19808         interest(1)
       
 19809     }
       
 19810     field(SVAL, DBF_ULONG) {
       
 19811         prompt("Simulation Value")
       
 19812     }
       
 19813     field(SIML, DBF_INLINK) {
       
 19814         prompt("Simulation Mode Link")
       
 19815         interest(1)
       
 19816         promptgroup("90 - Simulate")
       
 19817     }
       
 19818     field(SIMM, DBF_MENU) {
       
 19819         menu(menuSimm)
       
 19820         interest(1)
       
 19821         special(SPC_MOD)
       
 19822         prompt("Simulation Mode")
       
 19823     }
       
 19824     field(SIMS, DBF_MENU) {
       
 19825         prompt("Simulation Mode Severity")
       
 19826         interest(2)
       
 19827         promptgroup("90 - Simulate")
       
 19828         menu(menuAlarmSevr)
       
 19829     }
       
 19830     field(OLDSIMM, DBF_MENU) {
       
 19831         interest(4)
       
 19832         special(SPC_NOMOD)
       
 19833         prompt("Prev. Simulation Mode")
       
 19834         menu(menuSimm)
       
 19835     }
       
 19836     field(SSCN, DBF_MENU) {
       
 19837         interest(1)
       
 19838         promptgroup("90 - Simulate")
       
 19839         prompt("Sim. Mode Scan")
       
 19840         menu(menuScan)
       
 19841         initial("65535")
       
 19842     }
       
 19843     field(SDLY, DBF_DOUBLE) {
       
 19844         promptgroup("90 - Simulate")
       
 19845         interest(2)
       
 19846         prompt("Sim. Mode Async Delay")
       
 19847         initial("-1.0")
       
 19848     }
       
 19849     field(SIMPVT, DBF_NOACCESS) {
       
 19850         prompt("Sim. Mode Private")
       
 19851         interest(4)
       
 19852         special(SPC_NOMOD)
       
 19853         extra("CALLBACK            *simpvt")
       
 19854     }
       
 19855 }
       
 19856 device(mbbi, CONSTANT, devMbbiSoft, "Soft Channel")
       
 19857 device(mbbi, CONSTANT, devMbbiSoftRaw, "Raw Soft Channel")
       
 19858 device(mbbi, CONSTANT, devMbbiSoftCallback, "Async Soft Channel")
       
 19859 device(mbbi, INST_IO, asynMbbiInt32, "asynInt32")
       
 19860 device(mbbi, INST_IO, asynMbbiUInt32Digital, "asynUInt32Digital")
       
 19861 device(mbbi, INST_IO, devmbbiStream, "stream")
       
 19862 device(mbbi, INST_IO, devMbbiTPG261, "asyn TPG261")
       
 19863 recordtype(swait) {
       
 19864     %#include "epicsTypes.h"
       
 19865     %#include "link.h"
       
 19866     %#include "epicsMutex.h"
       
 19867     %#include "ellLib.h"
       
 19868     %#include "epicsTime.h"
       
 19869     field(NAME, DBF_STRING) {
       
 19870         size(61)
       
 19871         special(SPC_NOMOD)
       
 19872         prompt("Record Name")
       
 19873     }
       
 19874     field(DESC, DBF_STRING) {
       
 19875         promptgroup("10 - Common")
       
 19876         prompt("Descriptor")
       
 19877         size(41)
       
 19878     }
       
 19879     field(ASG, DBF_STRING) {
       
 19880         size(29)
       
 19881         prompt("Access Security Group")
       
 19882         special(SPC_AS)
       
 19883         promptgroup("10 - Common")
       
 19884     }
       
 19885     field(SCAN, DBF_MENU) {
       
 19886         menu(menuScan)
       
 19887         prompt("Scan Mechanism")
       
 19888         promptgroup("20 - Scan")
       
 19889         interest(1)
       
 19890         special(SPC_SCAN)
       
 19891     }
       
 19892     field(PINI, DBF_MENU) {
       
 19893         prompt("Process at iocInit")
       
 19894         interest(1)
       
 19895         promptgroup("20 - Scan")
       
 19896         menu(menuPini)
       
 19897     }
       
 19898     field(PHAS, DBF_SHORT) {
       
 19899         interest(1)
       
 19900         promptgroup("20 - Scan")
       
 19901         special(SPC_SCAN)
       
 19902         prompt("Scan Phase")
       
 19903     }
       
 19904     field(EVNT, DBF_STRING) {
       
 19905         interest(1)
       
 19906         promptgroup("20 - Scan")
       
 19907         special(SPC_SCAN)
       
 19908         prompt("Event Name")
       
 19909         size(40)
       
 19910     }
       
 19911     field(TSE, DBF_SHORT) {
       
 19912         promptgroup("20 - Scan")
       
 19913         interest(1)
       
 19914         prompt("Time Stamp Event")
       
 19915     }
       
 19916     field(TSEL, DBF_INLINK) {
       
 19917         promptgroup("20 - Scan")
       
 19918         interest(1)
       
 19919         prompt("Time Stamp Link")
       
 19920     }
       
 19921     field(DTYP, DBF_DEVICE) {
       
 19922         interest(1)
       
 19923         promptgroup("10 - Common")
       
 19924         prompt("Device Type")
       
 19925     }
       
 19926     field(DISV, DBF_SHORT) {
       
 19927         initial("1")
       
 19928         promptgroup("20 - Scan")
       
 19929         prompt("Disable Value")
       
 19930     }
       
 19931     field(DISA, DBF_SHORT) {
       
 19932         prompt("Disable")
       
 19933     }
       
 19934     field(SDIS, DBF_INLINK) {
       
 19935         prompt("Scanning Disable")
       
 19936         promptgroup("20 - Scan")
       
 19937         interest(1)
       
 19938     }
       
 19939     field(MLOK, DBF_NOACCESS) {
       
 19940         extra("epicsMutexId        mlok")
       
 19941         prompt("Monitor lock")
       
 19942         interest(4)
       
 19943         special(SPC_NOMOD)
       
 19944     }
       
 19945     field(MLIS, DBF_NOACCESS) {
       
 19946         extra("ELLLIST             mlis")
       
 19947         prompt("Monitor List")
       
 19948         special(SPC_NOMOD)
       
 19949         interest(4)
       
 19950     }
       
 19951     field(BKLNK, DBF_NOACCESS) {
       
 19952         prompt("Backwards link tracking")
       
 19953         special(SPC_NOMOD)
       
 19954         interest(4)
       
 19955         extra("ELLLIST             bklnk")
       
 19956     }
       
 19957     field(DISP, DBF_UCHAR) {
       
 19958         prompt("Disable putField")
       
 19959     }
       
 19960     field(PROC, DBF_UCHAR) {
       
 19961         pp(TRUE)
       
 19962         interest(3)
       
 19963         prompt("Force Processing")
       
 19964     }
       
 19965     field(STAT, DBF_MENU) {
       
 19966         menu(menuAlarmStat)
       
 19967         prompt("Alarm Status")
       
 19968         special(SPC_NOMOD)
       
 19969         initial("UDF")
       
 19970     }
       
 19971     field(SEVR, DBF_MENU) {
       
 19972         special(SPC_NOMOD)
       
 19973         prompt("Alarm Severity")
       
 19974         menu(menuAlarmSevr)
       
 19975     }
       
 19976     field(NSTA, DBF_MENU) {
       
 19977         special(SPC_NOMOD)
       
 19978         interest(2)
       
 19979         prompt("New Alarm Status")
       
 19980         menu(menuAlarmStat)
       
 19981     }
       
 19982     field(NSEV, DBF_MENU) {
       
 19983         menu(menuAlarmSevr)
       
 19984         interest(2)
       
 19985         special(SPC_NOMOD)
       
 19986         prompt("New Alarm Severity")
       
 19987     }
       
 19988     field(ACKS, DBF_MENU) {
       
 19989         menu(menuAlarmSevr)
       
 19990         interest(2)
       
 19991         special(SPC_NOMOD)
       
 19992         prompt("Alarm Ack Severity")
       
 19993     }
       
 19994     field(ACKT, DBF_MENU) {
       
 19995         menu(menuYesNo)
       
 19996         prompt("Alarm Ack Transient")
       
 19997         interest(2)
       
 19998         promptgroup("70 - Alarm")
       
 19999         special(SPC_NOMOD)
       
 20000         initial("YES")
       
 20001     }
       
 20002     field(DISS, DBF_MENU) {
       
 20003         menu(menuAlarmSevr)
       
 20004         promptgroup("70 - Alarm")
       
 20005         interest(1)
       
 20006         prompt("Disable Alarm Sevrty")
       
 20007     }
       
 20008     field(LCNT, DBF_UCHAR) {
       
 20009         prompt("Lock Count")
       
 20010         special(SPC_NOMOD)
       
 20011         interest(2)
       
 20012     }
       
 20013     field(PACT, DBF_UCHAR) {
       
 20014         special(SPC_NOMOD)
       
 20015         interest(1)
       
 20016         prompt("Record active")
       
 20017     }
       
 20018     field(PUTF, DBF_UCHAR) {
       
 20019         prompt("dbPutField process")
       
 20020         interest(1)
       
 20021         special(SPC_NOMOD)
       
 20022     }
       
 20023     field(RPRO, DBF_UCHAR) {
       
 20024         prompt("Reprocess ")
       
 20025         special(SPC_NOMOD)
       
 20026         interest(1)
       
 20027     }
       
 20028     field(ASP, DBF_NOACCESS) {
       
 20029         prompt("Access Security Pvt")
       
 20030         special(SPC_NOMOD)
       
 20031         interest(4)
       
 20032         extra("struct asgMember    *asp")
       
 20033     }
       
 20034     field(PPN, DBF_NOACCESS) {
       
 20035         extra("struct processNotify *ppn")
       
 20036         special(SPC_NOMOD)
       
 20037         interest(4)
       
 20038         prompt("pprocessNotify")
       
 20039     }
       
 20040     field(PPNR, DBF_NOACCESS) {
       
 20041         extra("struct processNotifyRecord *ppnr")
       
 20042         prompt("pprocessNotifyRecord")
       
 20043         special(SPC_NOMOD)
       
 20044         interest(4)
       
 20045     }
       
 20046     field(SPVT, DBF_NOACCESS) {
       
 20047         extra("struct scan_element *spvt")
       
 20048         interest(4)
       
 20049         special(SPC_NOMOD)
       
 20050         prompt("Scan Private")
       
 20051     }
       
 20052     field(RSET, DBF_NOACCESS) {
       
 20053         prompt("Address of RSET")
       
 20054         special(SPC_NOMOD)
       
 20055         interest(4)
       
 20056         extra("struct typed_rset   *rset")
       
 20057     }
       
 20058     field(DSET, DBF_NOACCESS) {
       
 20059         extra("struct dset         *dset")
       
 20060         prompt("DSET address")
       
 20061         special(SPC_NOMOD)
       
 20062         interest(4)
       
 20063     }
       
 20064     field(DPVT, DBF_NOACCESS) {
       
 20065         prompt("Device Private")
       
 20066         special(SPC_NOMOD)
       
 20067         interest(4)
       
 20068         extra("void                *dpvt")
       
 20069     }
       
 20070     field(RDES, DBF_NOACCESS) {
       
 20071         extra("struct dbRecordType *rdes")
       
 20072         interest(4)
       
 20073         special(SPC_NOMOD)
       
 20074         prompt("Address of dbRecordType")
       
 20075     }
       
 20076     field(LSET, DBF_NOACCESS) {
       
 20077         special(SPC_NOMOD)
       
 20078         interest(4)
       
 20079         prompt("Lock Set")
       
 20080         extra("struct lockRecord   *lset")
       
 20081     }
       
 20082     field(PRIO, DBF_MENU) {
       
 20083         interest(1)
       
 20084         promptgroup("20 - Scan")
       
 20085         special(SPC_SCAN)
       
 20086         prompt("Scheduling Priority")
       
 20087         menu(menuPriority)
       
 20088     }
       
 20089     field(TPRO, DBF_UCHAR) {
       
 20090         prompt("Trace Processing")
       
 20091     }
       
 20092     field(BKPT, DBF_NOACCESS) {
       
 20093         interest(1)
       
 20094         special(SPC_NOMOD)
       
 20095         prompt("Break Point")
       
 20096         extra("char                bkpt")
       
 20097     }
       
 20098     field(UDF, DBF_UCHAR) {
       
 20099         pp(TRUE)
       
 20100         initial("1")
       
 20101         interest(1)
       
 20102         promptgroup("10 - Common")
       
 20103         prompt("Undefined")
       
 20104     }
       
 20105     field(UDFS, DBF_MENU) {
       
 20106         initial("INVALID")
       
 20107         prompt("Undefined Alarm Sevrty")
       
 20108         interest(1)
       
 20109         promptgroup("70 - Alarm")
       
 20110         menu(menuAlarmSevr)
       
 20111     }
       
 20112     field(TIME, DBF_NOACCESS) {
       
 20113         extra("epicsTimeStamp      time")
       
 20114         interest(2)
       
 20115         special(SPC_NOMOD)
       
 20116         prompt("Time")
       
 20117     }
       
 20118     field(FLNK, DBF_FWDLINK) {
       
 20119         prompt("Forward Process Link")
       
 20120         interest(1)
       
 20121         promptgroup("20 - Scan")
       
 20122     }
       
 20123     field(VERS, DBF_FLOAT) {
       
 20124         initial("1")
       
 20125         special(SPC_NOMOD)
       
 20126         prompt("Code Version")
       
 20127     }
       
 20128     field(HOPR, DBF_FLOAT) {
       
 20129         asl(ASL0)
       
 20130         interest(1)
       
 20131         promptgroup("70 - Alarm")
       
 20132         prompt("High Operating Range")
       
 20133     }
       
 20134     field(LOPR, DBF_FLOAT) {
       
 20135         promptgroup("41 - Bits (1)")
       
 20136         interest(1)
       
 20137         prompt("Low Operating Range")
       
 20138         asl(ASL0)
       
 20139     }
       
 20140     field(INIT, DBF_SHORT) {
       
 20141         special(SPC_NOMOD)
       
 20142         interest(3)
       
 20143         prompt("Initialized?")
       
 20144     }
       
 20145     field(CBST, DBF_NOACCESS) {
       
 20146         special(SPC_NOMOD)
       
 20147         interest(4)
       
 20148         prompt("Pointer to cbStruct")
       
 20149         extra("void *         cbst")
       
 20150         size(4)
       
 20151     }
       
 20152     field(INAN, DBF_STRING) {
       
 20153         size(40)
       
 20154         asl(ASL0)
       
 20155         prompt("INPA PV Name")
       
 20156         promptgroup("30 - Action")
       
 20157         interest(1)
       
 20158         special(SPC_MOD)
       
 20159     }
       
 20160     field(INBN, DBF_STRING) {
       
 20161         asl(ASL0)
       
 20162         prompt("INPB PV Name")
       
 20163         promptgroup("30 - Action")
       
 20164         interest(1)
       
 20165         special(SPC_MOD)
       
 20166         size(40)
       
 20167     }
       
 20168     field(INCN, DBF_STRING) {
       
 20169         size(40)
       
 20170         prompt("INPC PV Name")
       
 20171         special(SPC_MOD)
       
 20172         interest(1)
       
 20173         promptgroup("30 - Action")
       
 20174         asl(ASL0)
       
 20175     }
       
 20176     field(INDN, DBF_STRING) {
       
 20177         prompt("INPD PV Name")
       
 20178         interest(1)
       
 20179         special(SPC_MOD)
       
 20180         promptgroup("30 - Action")
       
 20181         asl(ASL0)
       
 20182         size(40)
       
 20183     }
       
 20184     field(INEN, DBF_STRING) {
       
 20185         prompt("INPE PV Name")
       
 20186         special(SPC_MOD)
       
 20187         interest(1)
       
 20188         promptgroup("30 - Action")
       
 20189         asl(ASL0)
       
 20190         size(40)
       
 20191     }
       
 20192     field(INFN, DBF_STRING) {
       
 20193         size(40)
       
 20194         asl(ASL0)
       
 20195         special(SPC_MOD)
       
 20196         interest(1)
       
 20197         promptgroup("30 - Action")
       
 20198         prompt("INPF PV Name")
       
 20199     }
       
 20200     field(INGN, DBF_STRING) {
       
 20201         size(40)
       
 20202         interest(1)
       
 20203         promptgroup("30 - Action")
       
 20204         special(SPC_MOD)
       
 20205         prompt("INPG PV Name")
       
 20206         asl(ASL0)
       
 20207     }
       
 20208     field(INHN, DBF_STRING) {
       
 20209         prompt("INPH PV Name")
       
 20210         promptgroup("30 - Action")
       
 20211         interest(1)
       
 20212         special(SPC_MOD)
       
 20213         asl(ASL0)
       
 20214         size(40)
       
 20215     }
       
 20216     field(ININ, DBF_STRING) {
       
 20217         asl(ASL0)
       
 20218         prompt("INPI PV Name")
       
 20219         interest(1)
       
 20220         special(SPC_MOD)
       
 20221         promptgroup("30 - Action")
       
 20222         size(40)
       
 20223     }
       
 20224     field(INJN, DBF_STRING) {
       
 20225         size(40)
       
 20226         asl(ASL0)
       
 20227         prompt("INPJ PV Name")
       
 20228         special(SPC_MOD)
       
 20229         interest(1)
       
 20230         promptgroup("30 - Action")
       
 20231     }
       
 20232     field(INKN, DBF_STRING) {
       
 20233         size(40)
       
 20234         asl(ASL0)
       
 20235         interest(1)
       
 20236         promptgroup("30 - Action")
       
 20237         special(SPC_MOD)
       
 20238         prompt("INPK PV Name")
       
 20239     }
       
 20240     field(INLN, DBF_STRING) {
       
 20241         size(40)
       
 20242         special(SPC_MOD)
       
 20243         interest(1)
       
 20244         promptgroup("30 - Action")
       
 20245         prompt("INPL PV Name")
       
 20246         asl(ASL0)
       
 20247     }
       
 20248     field(DOLN, DBF_STRING) {
       
 20249         asl(ASL0)
       
 20250         prompt("DOL  PV Name")
       
 20251         promptgroup("30 - Action")
       
 20252         interest(1)
       
 20253         special(SPC_MOD)
       
 20254         size(40)
       
 20255     }
       
 20256     field(OUTN, DBF_STRING) {
       
 20257         size(40)
       
 20258         prompt("OUT  PV Name")
       
 20259         interest(1)
       
 20260         special(SPC_MOD)
       
 20261         promptgroup("30 - Action")
       
 20262         asl(ASL0)
       
 20263     }
       
 20264     field(INAV, DBF_MENU) {
       
 20265         menu(swaitINAV)
       
 20266         prompt("INPA PV Status")
       
 20267         special(SPC_NOMOD)
       
 20268         interest(1)
       
 20269     }
       
 20270     field(INBV, DBF_MENU) {
       
 20271         menu(swaitINAV)
       
 20272         special(SPC_NOMOD)
       
 20273         interest(1)
       
 20274         prompt("INPB PV Status")
       
 20275     }
       
 20276     field(INCV, DBF_MENU) {
       
 20277         interest(1)
       
 20278         special(SPC_NOMOD)
       
 20279         prompt("INPC PV Status")
       
 20280         menu(swaitINAV)
       
 20281     }
       
 20282     field(INDV, DBF_MENU) {
       
 20283         prompt("INPD PV Status")
       
 20284         interest(1)
       
 20285         special(SPC_NOMOD)
       
 20286         menu(swaitINAV)
       
 20287     }
       
 20288     field(INEV, DBF_MENU) {
       
 20289         menu(swaitINAV)
       
 20290         prompt("INPE PV Status")
       
 20291         special(SPC_NOMOD)
       
 20292         interest(1)
       
 20293     }
       
 20294     field(INFV, DBF_MENU) {
       
 20295         prompt("INPF PV Status")
       
 20296         special(SPC_NOMOD)
       
 20297         interest(1)
       
 20298         menu(swaitINAV)
       
 20299     }
       
 20300     field(INGV, DBF_MENU) {
       
 20301         prompt("INPG PV Status")
       
 20302         special(SPC_NOMOD)
       
 20303         interest(1)
       
 20304         menu(swaitINAV)
       
 20305     }
       
 20306     field(INHV, DBF_MENU) {
       
 20307         prompt("INPH PV Status")
       
 20308         special(SPC_NOMOD)
       
 20309         interest(1)
       
 20310         menu(swaitINAV)
       
 20311     }
       
 20312     field(INIV, DBF_MENU) {
       
 20313         menu(swaitINAV)
       
 20314         interest(1)
       
 20315         special(SPC_NOMOD)
       
 20316         prompt("INPI PV Status")
       
 20317     }
       
 20318     field(INJV, DBF_MENU) {
       
 20319         prompt("INPJ PV Status")
       
 20320         interest(1)
       
 20321         special(SPC_NOMOD)
       
 20322         menu(swaitINAV)
       
 20323     }
       
 20324     field(INKV, DBF_MENU) {
       
 20325         menu(swaitINAV)
       
 20326         prompt("INPK PV Status")
       
 20327         special(SPC_NOMOD)
       
 20328         interest(1)
       
 20329     }
       
 20330     field(INLV, DBF_MENU) {
       
 20331         prompt("INPL PV Status")
       
 20332         special(SPC_NOMOD)
       
 20333         interest(1)
       
 20334         menu(swaitINAV)
       
 20335     }
       
 20336     field(DOLV, DBF_MENU) {
       
 20337         prompt("DOL  PV Status")
       
 20338         interest(1)
       
 20339         special(SPC_NOMOD)
       
 20340         menu(swaitINAV)
       
 20341     }
       
 20342     field(OUTV, DBF_MENU) {
       
 20343         menu(swaitINAV)
       
 20344         interest(1)
       
 20345         special(SPC_NOMOD)
       
 20346         prompt("OUT  PV Status")
       
 20347     }
       
 20348     field(A, DBF_DOUBLE) {
       
 20349         pp(TRUE)
       
 20350         prompt("Value of Input A")
       
 20351     }
       
 20352     field(B, DBF_DOUBLE) {
       
 20353         pp(TRUE)
       
 20354         prompt("Value of Input B")
       
 20355     }
       
 20356     field(C, DBF_DOUBLE) {
       
 20357         prompt("Value of Input C")
       
 20358         pp(TRUE)
       
 20359     }
       
 20360     field(D, DBF_DOUBLE) {
       
 20361         prompt("Value of Input D")
       
 20362         pp(TRUE)
       
 20363     }
       
 20364     field(E, DBF_DOUBLE) {
       
 20365         prompt("Value of Input E")
       
 20366         pp(TRUE)
       
 20367     }
       
 20368     field(F, DBF_DOUBLE) {
       
 20369         pp(TRUE)
       
 20370         prompt("Value of Input F")
       
 20371     }
       
 20372     field(G, DBF_DOUBLE) {
       
 20373         prompt("Value of Input G")
       
 20374         pp(TRUE)
       
 20375     }
       
 20376     field(H, DBF_DOUBLE) {
       
 20377         prompt("Value of Input H")
       
 20378         pp(TRUE)
       
 20379     }
       
 20380     field(I, DBF_DOUBLE) {
       
 20381         pp(TRUE)
       
 20382         prompt("Value of Input I")
       
 20383     }
       
 20384     field(J, DBF_DOUBLE) {
       
 20385         pp(TRUE)
       
 20386         prompt("Value of Input J")
       
 20387     }
       
 20388     field(K, DBF_DOUBLE) {
       
 20389         pp(TRUE)
       
 20390         prompt("Value of Input K")
       
 20391     }
       
 20392     field(L, DBF_DOUBLE) {
       
 20393         pp(TRUE)
       
 20394         prompt("Value of Input L")
       
 20395     }
       
 20396     field(LA, DBF_DOUBLE) {
       
 20397         prompt("Last Val of Input A")
       
 20398     }
       
 20399     field(LB, DBF_DOUBLE) {
       
 20400         prompt("Last Val of Input B")
       
 20401     }
       
 20402     field(LC, DBF_DOUBLE) {
       
 20403         prompt("Last Val of Input C")
       
 20404     }
       
 20405     field(LD, DBF_DOUBLE) {
       
 20406         prompt("Last Val of Input D")
       
 20407     }
       
 20408     field(LE, DBF_DOUBLE) {
       
 20409         prompt("Last Val of Input E")
       
 20410     }
       
 20411     field(LF, DBF_DOUBLE) {
       
 20412         prompt("Last Val of Input F")
       
 20413     }
       
 20414     field(LG, DBF_DOUBLE) {
       
 20415         prompt("Last Val of Input G")
       
 20416     }
       
 20417     field(LH, DBF_DOUBLE) {
       
 20418         prompt("Last Val of Input H")
       
 20419     }
       
 20420     field(LI, DBF_DOUBLE) {
       
 20421         prompt("Last Val of Input I")
       
 20422     }
       
 20423     field(LJ, DBF_DOUBLE) {
       
 20424         prompt("Last Val of Input J")
       
 20425     }
       
 20426     field(LK, DBF_DOUBLE) {
       
 20427         prompt("Last Val of Input K")
       
 20428     }
       
 20429     field(LL, DBF_DOUBLE) {
       
 20430         prompt("Last Val of Input L")
       
 20431     }
       
 20432     field(INAP, DBF_MENU) {
       
 20433         initial("Yes")
       
 20434         menu(swaitINAP)
       
 20435         interest(1)
       
 20436         promptgroup("30 - Action")
       
 20437         prompt("INPA causes I/O INTR")
       
 20438     }
       
 20439     field(INBP, DBF_MENU) {
       
 20440         menu(swaitINAP)
       
 20441         interest(1)
       
 20442         promptgroup("30 - Action")
       
 20443         prompt("INPB causes I/O INTR")
       
 20444         initial("Yes")
       
 20445     }
       
 20446     field(INCP, DBF_MENU) {
       
 20447         prompt("INPC causes I/O INTR")
       
 20448         promptgroup("30 - Action")
       
 20449         interest(1)
       
 20450         menu(swaitINAP)
       
 20451         initial("Yes")
       
 20452     }
       
 20453     field(INDP, DBF_MENU) {
       
 20454         initial("Yes")
       
 20455         prompt("INPD causes I/O INTR")
       
 20456         promptgroup("30 - Action")
       
 20457         interest(1)
       
 20458         menu(swaitINAP)
       
 20459     }
       
 20460     field(INEP, DBF_MENU) {
       
 20461         initial("Yes")
       
 20462         interest(1)
       
 20463         promptgroup("30 - Action")
       
 20464         prompt("INPE causes I/O INTR")
       
 20465         menu(swaitINAP)
       
 20466     }
       
 20467     field(INFP, DBF_MENU) {
       
 20468         menu(swaitINAP)
       
 20469         prompt("INPF causes I/O INTR")
       
 20470         promptgroup("30 - Action")
       
 20471         interest(1)
       
 20472         initial("Yes")
       
 20473     }
       
 20474     field(INGP, DBF_MENU) {
       
 20475         initial("Yes")
       
 20476         menu(swaitINAP)
       
 20477         prompt("INPG causes I/O INTR")
       
 20478         interest(1)
       
 20479         promptgroup("30 - Action")
       
 20480     }
       
 20481     field(INHP, DBF_MENU) {
       
 20482         menu(swaitINAP)
       
 20483         interest(1)
       
 20484         promptgroup("30 - Action")
       
 20485         prompt("INPH causes I/O INTR")
       
 20486         initial("Yes")
       
 20487     }
       
 20488     field(INIP, DBF_MENU) {
       
 20489         initial("Yes")
       
 20490         menu(swaitINAP)
       
 20491         interest(1)
       
 20492         promptgroup("30 - Action")
       
 20493         prompt("INPI causes I/O INTR")
       
 20494     }
       
 20495     field(INJP, DBF_MENU) {
       
 20496         initial("Yes")
       
 20497         prompt("INPJ causes I/O INTR")
       
 20498         promptgroup("30 - Action")
       
 20499         interest(1)
       
 20500         menu(swaitINAP)
       
 20501     }
       
 20502     field(INKP, DBF_MENU) {
       
 20503         prompt("INPK causes I/O INTR")
       
 20504         promptgroup("30 - Action")
       
 20505         interest(1)
       
 20506         menu(swaitINAP)
       
 20507         initial("Yes")
       
 20508     }
       
 20509     field(INLP, DBF_MENU) {
       
 20510         interest(1)
       
 20511         promptgroup("30 - Action")
       
 20512         prompt("INPL causes I/O INTR")
       
 20513         menu(swaitINAP)
       
 20514         initial("Yes")
       
 20515     }
       
 20516     field(CALC, DBF_STRING) {
       
 20517         initial("0")
       
 20518         size(36)
       
 20519         promptgroup("30 - Action")
       
 20520         special(SPC_CALC)
       
 20521         prompt("Calculation")
       
 20522         asl(ASL0)
       
 20523     }
       
 20524     field(RPCL, DBF_NOACCESS) {
       
 20525         extra("char    rpcl[184]")
       
 20526         size(184)
       
 20527         interest(4)
       
 20528         special(SPC_NOMOD)
       
 20529         prompt("Reverse Polish Calc")
       
 20530     }
       
 20531     field(CLCV, DBF_LONG) {
       
 20532         prompt("CALC Valid")
       
 20533         interest(1)
       
 20534     }
       
 20535     field(VAL, DBF_DOUBLE) {
       
 20536         prompt("Value Field")
       
 20537     }
       
 20538     field(OVAL, DBF_DOUBLE) {
       
 20539         prompt("Old Value")
       
 20540     }
       
 20541     field(PREC, DBF_SHORT) {
       
 20542         prompt("Display Precision")
       
 20543         promptgroup("10 - Common")
       
 20544         interest(1)
       
 20545     }
       
 20546     field(OOPT, DBF_MENU) {
       
 20547         menu(swaitOOPT)
       
 20548         promptgroup("30 - Action")
       
 20549         interest(1)
       
 20550         prompt("Output Execute Opt")
       
 20551     }
       
 20552     field(ODLY, DBF_FLOAT) {
       
 20553         prompt("Output Execute Delay")
       
 20554         promptgroup("70 - Alarm")
       
 20555         interest(1)
       
 20556         asl(ASL0)
       
 20557     }
       
 20558     field(DOPT, DBF_MENU) {
       
 20559         menu(swaitDOPT)
       
 20560         interest(1)
       
 20561         promptgroup("30 - Action")
       
 20562         prompt("Output Data Option")
       
 20563     }
       
 20564     field(DOLD, DBF_DOUBLE) {
       
 20565         interest(1)
       
 20566         promptgroup("30 - Action")
       
 20567         prompt("Desired Output Data")
       
 20568         asl(ASL0)
       
 20569     }
       
 20570     field(OEVT, DBF_USHORT) {
       
 20571         prompt("Event To Issue")
       
 20572         promptgroup("30 - Action")
       
 20573         asl(ASL0)
       
 20574     }
       
 20575     field(ADEL, DBF_DOUBLE) {
       
 20576         prompt("Archive Deadband")
       
 20577         interest(1)
       
 20578         promptgroup("30 - Action")
       
 20579     }
       
 20580     field(MDEL, DBF_DOUBLE) {
       
 20581         promptgroup("30 - Action")
       
 20582         interest(1)
       
 20583         prompt("Monitor Deadband")
       
 20584     }
       
 20585     field(ALST, DBF_DOUBLE) {
       
 20586         prompt("Last Value Archived")
       
 20587         interest(3)
       
 20588         special(SPC_NOMOD)
       
 20589     }
       
 20590     field(MLST, DBF_DOUBLE) {
       
 20591         prompt("Last Val Monitored")
       
 20592         special(SPC_NOMOD)
       
 20593         interest(3)
       
 20594     }
       
 20595     field(SIOL, DBF_INLINK) {
       
 20596         prompt("Sim Input Specifctn")
       
 20597         interest(1)
       
 20598         promptgroup("30 - Action")
       
 20599     }
       
 20600     field(SVAL, DBF_DOUBLE) {
       
 20601         prompt("Simulation Value")
       
 20602     }
       
 20603     field(SIML, DBF_INLINK) {
       
 20604         prompt("Sim Mode Location")
       
 20605         promptgroup("30 - Action")
       
 20606         interest(1)
       
 20607     }
       
 20608     field(SIMM, DBF_MENU) {
       
 20609         menu(menuYesNo)
       
 20610         interest(1)
       
 20611         prompt("Simulation Mode")
       
 20612     }
       
 20613     field(SIMS, DBF_MENU) {
       
 20614         menu(menuAlarmSevr)
       
 20615         prompt("Sim mode Alarm Svrty")
       
 20616         interest(2)
       
 20617         promptgroup("40 - Input")
       
 20618     }
       
 20619 }
       
 20620 device(swait, CONSTANT, devSWaitIoEvent, "Soft Channel")
       
 20621 recordtype(ai) {
       
 20622     %#include "epicsTypes.h"
       
 20623     %#include "link.h"
       
 20624     %#include "epicsMutex.h"
       
 20625     %#include "ellLib.h"
       
 20626     %#include "epicsTime.h"
       
 20627     %#include "callback.h"
       
 20628     field(NAME, DBF_STRING) {
       
 20629         size(61)
       
 20630         prompt("Record Name")
       
 20631         special(SPC_NOMOD)
       
 20632     }
       
 20633     field(DESC, DBF_STRING) {
       
 20634         size(41)
       
 20635         prompt("Descriptor")
       
 20636         promptgroup("10 - Common")
       
 20637     }
       
 20638     field(ASG, DBF_STRING) {
       
 20639         prompt("Access Security Group")
       
 20640         special(SPC_AS)
       
 20641         promptgroup("10 - Common")
       
 20642         size(29)
       
 20643     }
       
 20644     field(SCAN, DBF_MENU) {
       
 20645         menu(menuScan)
       
 20646         promptgroup("20 - Scan")
       
 20647         interest(1)
       
 20648         special(SPC_SCAN)
       
 20649         prompt("Scan Mechanism")
       
 20650     }
       
 20651     field(PINI, DBF_MENU) {
       
 20652         menu(menuPini)
       
 20653         promptgroup("20 - Scan")
       
 20654         interest(1)
       
 20655         prompt("Process at iocInit")
       
 20656     }
       
 20657     field(PHAS, DBF_SHORT) {
       
 20658         prompt("Scan Phase")
       
 20659         special(SPC_SCAN)
       
 20660         interest(1)
       
 20661         promptgroup("20 - Scan")
       
 20662     }
       
 20663     field(EVNT, DBF_STRING) {
       
 20664         prompt("Event Name")
       
 20665         promptgroup("20 - Scan")
       
 20666         interest(1)
       
 20667         special(SPC_SCAN)
       
 20668         size(40)
       
 20669     }
       
 20670     field(TSE, DBF_SHORT) {
       
 20671         interest(1)
       
 20672         promptgroup("20 - Scan")
       
 20673         prompt("Time Stamp Event")
       
 20674     }
       
 20675     field(TSEL, DBF_INLINK) {
       
 20676         prompt("Time Stamp Link")
       
 20677         interest(1)
       
 20678         promptgroup("20 - Scan")
       
 20679     }
       
 20680     field(DTYP, DBF_DEVICE) {
       
 20681         promptgroup("10 - Common")
       
 20682         interest(1)
       
 20683         prompt("Device Type")
       
 20684     }
       
 20685     field(DISV, DBF_SHORT) {
       
 20686         prompt("Disable Value")
       
 20687         promptgroup("20 - Scan")
       
 20688         initial("1")
       
 20689     }
       
 20690     field(DISA, DBF_SHORT) {
       
 20691         prompt("Disable")
       
 20692     }
       
 20693     field(SDIS, DBF_INLINK) {
       
 20694         promptgroup("20 - Scan")
       
 20695         interest(1)
       
 20696         prompt("Scanning Disable")
       
 20697     }
       
 20698     field(MLOK, DBF_NOACCESS) {
       
 20699         prompt("Monitor lock")
       
 20700         interest(4)
       
 20701         special(SPC_NOMOD)
       
 20702         extra("epicsMutexId        mlok")
       
 20703     }
       
 20704     field(MLIS, DBF_NOACCESS) {
       
 20705         extra("ELLLIST             mlis")
       
 20706         interest(4)
       
 20707         special(SPC_NOMOD)
       
 20708         prompt("Monitor List")
       
 20709     }
       
 20710     field(BKLNK, DBF_NOACCESS) {
       
 20711         extra("ELLLIST             bklnk")
       
 20712         interest(4)
       
 20713         special(SPC_NOMOD)
       
 20714         prompt("Backwards link tracking")
       
 20715     }
       
 20716     field(DISP, DBF_UCHAR) {
       
 20717         prompt("Disable putField")
       
 20718     }
       
 20719     field(PROC, DBF_UCHAR) {
       
 20720         prompt("Force Processing")
       
 20721         interest(3)
       
 20722         pp(TRUE)
       
 20723     }
       
 20724     field(STAT, DBF_MENU) {
       
 20725         special(SPC_NOMOD)
       
 20726         prompt("Alarm Status")
       
 20727         menu(menuAlarmStat)
       
 20728         initial("UDF")
       
 20729     }
       
 20730     field(SEVR, DBF_MENU) {
       
 20731         menu(menuAlarmSevr)
       
 20732         prompt("Alarm Severity")
       
 20733         special(SPC_NOMOD)
       
 20734     }
       
 20735     field(NSTA, DBF_MENU) {
       
 20736         menu(menuAlarmStat)
       
 20737         prompt("New Alarm Status")
       
 20738         special(SPC_NOMOD)
       
 20739         interest(2)
       
 20740     }
       
 20741     field(NSEV, DBF_MENU) {
       
 20742         special(SPC_NOMOD)
       
 20743         interest(2)
       
 20744         prompt("New Alarm Severity")
       
 20745         menu(menuAlarmSevr)
       
 20746     }
       
 20747     field(ACKS, DBF_MENU) {
       
 20748         interest(2)
       
 20749         special(SPC_NOMOD)
       
 20750         prompt("Alarm Ack Severity")
       
 20751         menu(menuAlarmSevr)
       
 20752     }
       
 20753     field(ACKT, DBF_MENU) {
       
 20754         initial("YES")
       
 20755         interest(2)
       
 20756         promptgroup("70 - Alarm")
       
 20757         special(SPC_NOMOD)
       
 20758         prompt("Alarm Ack Transient")
       
 20759         menu(menuYesNo)
       
 20760     }
       
 20761     field(DISS, DBF_MENU) {
       
 20762         interest(1)
       
 20763         promptgroup("70 - Alarm")
       
 20764         prompt("Disable Alarm Sevrty")
       
 20765         menu(menuAlarmSevr)
       
 20766     }
       
 20767     field(LCNT, DBF_UCHAR) {
       
 20768         prompt("Lock Count")
       
 20769         special(SPC_NOMOD)
       
 20770         interest(2)
       
 20771     }
       
 20772     field(PACT, DBF_UCHAR) {
       
 20773         special(SPC_NOMOD)
       
 20774         interest(1)
       
 20775         prompt("Record active")
       
 20776     }
       
 20777     field(PUTF, DBF_UCHAR) {
       
 20778         special(SPC_NOMOD)
       
 20779         interest(1)
       
 20780         prompt("dbPutField process")
       
 20781     }
       
 20782     field(RPRO, DBF_UCHAR) {
       
 20783         interest(1)
       
 20784         special(SPC_NOMOD)
       
 20785         prompt("Reprocess ")
       
 20786     }
       
 20787     field(ASP, DBF_NOACCESS) {
       
 20788         prompt("Access Security Pvt")
       
 20789         interest(4)
       
 20790         special(SPC_NOMOD)
       
 20791         extra("struct asgMember    *asp")
       
 20792     }
       
 20793     field(PPN, DBF_NOACCESS) {
       
 20794         interest(4)
       
 20795         special(SPC_NOMOD)
       
 20796         prompt("pprocessNotify")
       
 20797         extra("struct processNotify *ppn")
       
 20798     }
       
 20799     field(PPNR, DBF_NOACCESS) {
       
 20800         prompt("pprocessNotifyRecord")
       
 20801         interest(4)
       
 20802         special(SPC_NOMOD)
       
 20803         extra("struct processNotifyRecord *ppnr")
       
 20804     }
       
 20805     field(SPVT, DBF_NOACCESS) {
       
 20806         extra("struct scan_element *spvt")
       
 20807         prompt("Scan Private")
       
 20808         interest(4)
       
 20809         special(SPC_NOMOD)
       
 20810     }
       
 20811     field(RSET, DBF_NOACCESS) {
       
 20812         extra("struct typed_rset   *rset")
       
 20813         prompt("Address of RSET")
       
 20814         special(SPC_NOMOD)
       
 20815         interest(4)
       
 20816     }
       
 20817     field(DSET, DBF_NOACCESS) {
       
 20818         prompt("DSET address")
       
 20819         interest(4)
       
 20820         special(SPC_NOMOD)
       
 20821         extra("struct dset         *dset")
       
 20822     }
       
 20823     field(DPVT, DBF_NOACCESS) {
       
 20824         prompt("Device Private")
       
 20825         interest(4)
       
 20826         special(SPC_NOMOD)
       
 20827         extra("void                *dpvt")
       
 20828     }
       
 20829     field(RDES, DBF_NOACCESS) {
       
 20830         prompt("Address of dbRecordType")
       
 20831         interest(4)
       
 20832         special(SPC_NOMOD)
       
 20833         extra("struct dbRecordType *rdes")
       
 20834     }
       
 20835     field(LSET, DBF_NOACCESS) {
       
 20836         extra("struct lockRecord   *lset")
       
 20837         interest(4)
       
 20838         special(SPC_NOMOD)
       
 20839         prompt("Lock Set")
       
 20840     }
       
 20841     field(PRIO, DBF_MENU) {
       
 20842         menu(menuPriority)
       
 20843         interest(1)
       
 20844         promptgroup("20 - Scan")
       
 20845         special(SPC_SCAN)
       
 20846         prompt("Scheduling Priority")
       
 20847     }
       
 20848     field(TPRO, DBF_UCHAR) {
       
 20849         prompt("Trace Processing")
       
 20850     }
       
 20851     field(BKPT, DBF_NOACCESS) {
       
 20852         prompt("Break Point")
       
 20853         special(SPC_NOMOD)
       
 20854         interest(1)
       
 20855         extra("char                bkpt")
       
 20856     }
       
 20857     field(UDF, DBF_UCHAR) {
       
 20858         pp(TRUE)
       
 20859         initial("1")
       
 20860         interest(1)
       
 20861         promptgroup("10 - Common")
       
 20862         prompt("Undefined")
       
 20863     }
       
 20864     field(UDFS, DBF_MENU) {
       
 20865         menu(menuAlarmSevr)
       
 20866         prompt("Undefined Alarm Sevrty")
       
 20867         interest(1)
       
 20868         promptgroup("70 - Alarm")
       
 20869         initial("INVALID")
       
 20870     }
       
 20871     field(TIME, DBF_NOACCESS) {
       
 20872         extra("epicsTimeStamp      time")
       
 20873         prompt("Time")
       
 20874         special(SPC_NOMOD)
       
 20875         interest(2)
       
 20876     }
       
 20877     field(FLNK, DBF_FWDLINK) {
       
 20878         interest(1)
       
 20879         promptgroup("20 - Scan")
       
 20880         prompt("Forward Process Link")
       
 20881     }
       
 20882     field(VAL, DBF_DOUBLE) {
       
 20883         pp(TRUE)
       
 20884         promptgroup("40 - Input")
       
 20885         prompt("Current EGU Value")
       
 20886         asl(ASL0)
       
 20887     }
       
 20888     field(INP, DBF_INLINK) {
       
 20889         prompt("Input Specification")
       
 20890         interest(1)
       
 20891         promptgroup("40 - Input")
       
 20892     }
       
 20893     field(PREC, DBF_SHORT) {
       
 20894         prompt("Display Precision")
       
 20895         interest(1)
       
 20896         prop(YES)
       
 20897         promptgroup("80 - Display")
       
 20898     }
       
 20899     field(LINR, DBF_MENU) {
       
 20900         pp(TRUE)
       
 20901         interest(1)
       
 20902         special(SPC_LINCONV)
       
 20903         promptgroup("60 - Convert")
       
 20904         prompt("Linearization")
       
 20905         menu(menuConvert)
       
 20906     }
       
 20907     field(EGUF, DBF_DOUBLE) {
       
 20908         pp(TRUE)
       
 20909         prompt("Engineer Units Full")
       
 20910         interest(1)
       
 20911         special(SPC_LINCONV)
       
 20912         promptgroup("60 - Convert")
       
 20913     }
       
 20914     field(EGUL, DBF_DOUBLE) {
       
 20915         interest(1)
       
 20916         promptgroup("60 - Convert")
       
 20917         special(SPC_LINCONV)
       
 20918         prompt("Engineer Units Low")
       
 20919         pp(TRUE)
       
 20920     }
       
 20921     field(EGU, DBF_STRING) {
       
 20922         size(16)
       
 20923         prop(YES)
       
 20924         promptgroup("80 - Display")
       
 20925         interest(1)
       
 20926         prompt("Engineering Units")
       
 20927     }
       
 20928     field(HOPR, DBF_DOUBLE) {
       
 20929         promptgroup("80 - Display")
       
 20930         prop(YES)
       
 20931         interest(1)
       
 20932         prompt("High Operating Range")
       
 20933     }
       
 20934     field(LOPR, DBF_DOUBLE) {
       
 20935         prompt("Low Operating Range")
       
 20936         prop(YES)
       
 20937         interest(1)
       
 20938         promptgroup("80 - Display")
       
 20939     }
       
 20940     field(AOFF, DBF_DOUBLE) {
       
 20941         interest(1)
       
 20942         promptgroup("60 - Convert")
       
 20943         prompt("Adjustment Offset")
       
 20944         pp(TRUE)
       
 20945     }
       
 20946     field(ASLO, DBF_DOUBLE) {
       
 20947         pp(TRUE)
       
 20948         initial("1")
       
 20949         prompt("Adjustment Slope")
       
 20950         interest(1)
       
 20951         promptgroup("60 - Convert")
       
 20952     }
       
 20953     field(SMOO, DBF_DOUBLE) {
       
 20954         prompt("Smoothing")
       
 20955         interest(1)
       
 20956         promptgroup("60 - Convert")
       
 20957     }
       
 20958     field(HIHI, DBF_DOUBLE) {
       
 20959         pp(TRUE)
       
 20960         interest(1)
       
 20961         prop(YES)
       
 20962         promptgroup("70 - Alarm")
       
 20963         prompt("Hihi Alarm Limit")
       
 20964     }
       
 20965     field(LOLO, DBF_DOUBLE) {
       
 20966         pp(TRUE)
       
 20967         promptgroup("70 - Alarm")
       
 20968         prop(YES)
       
 20969         interest(1)
       
 20970         prompt("Lolo Alarm Limit")
       
 20971     }
       
 20972     field(HIGH, DBF_DOUBLE) {
       
 20973         pp(TRUE)
       
 20974         prompt("High Alarm Limit")
       
 20975         interest(1)
       
 20976         prop(YES)
       
 20977         promptgroup("70 - Alarm")
       
 20978     }
       
 20979     field(LOW, DBF_DOUBLE) {
       
 20980         prop(YES)
       
 20981         interest(1)
       
 20982         promptgroup("70 - Alarm")
       
 20983         prompt("Low Alarm Limit")
       
 20984         pp(TRUE)
       
 20985     }
       
 20986     field(HHSV, DBF_MENU) {
       
 20987         pp(TRUE)
       
 20988         prompt("Hihi Severity")
       
 20989         prop(YES)
       
 20990         interest(1)
       
 20991         promptgroup("70 - Alarm")
       
 20992         menu(menuAlarmSevr)
       
 20993     }
       
 20994     field(LLSV, DBF_MENU) {
       
 20995         pp(TRUE)
       
 20996         menu(menuAlarmSevr)
       
 20997         prompt("Lolo Severity")
       
 20998         prop(YES)
       
 20999         promptgroup("70 - Alarm")
       
 21000         interest(1)
       
 21001     }
       
 21002     field(HSV, DBF_MENU) {
       
 21003         pp(TRUE)
       
 21004         menu(menuAlarmSevr)
       
 21005         prop(YES)
       
 21006         promptgroup("70 - Alarm")
       
 21007         interest(1)
       
 21008         prompt("High Severity")
       
 21009     }
       
 21010     field(LSV, DBF_MENU) {
       
 21011         pp(TRUE)
       
 21012         prompt("Low Severity")
       
 21013         interest(1)
       
 21014         prop(YES)
       
 21015         promptgroup("70 - Alarm")
       
 21016         menu(menuAlarmSevr)
       
 21017     }
       
 21018     field(HYST, DBF_DOUBLE) {
       
 21019         interest(1)
       
 21020         promptgroup("70 - Alarm")
       
 21021         prompt("Alarm Deadband")
       
 21022     }
       
 21023     field(AFTC, DBF_DOUBLE) {
       
 21024         interest(1)
       
 21025         promptgroup("70 - Alarm")
       
 21026         prompt("Alarm Filter Time Constant")
       
 21027     }
       
 21028     field(ADEL, DBF_DOUBLE) {
       
 21029         prompt("Archive Deadband")
       
 21030         interest(1)
       
 21031         promptgroup("80 - Display")
       
 21032     }
       
 21033     field(MDEL, DBF_DOUBLE) {
       
 21034         prompt("Monitor Deadband")
       
 21035         interest(1)
       
 21036         promptgroup("80 - Display")
       
 21037     }
       
 21038     field(LALM, DBF_DOUBLE) {
       
 21039         prompt("Last Value Alarmed")
       
 21040         special(SPC_NOMOD)
       
 21041         interest(3)
       
 21042     }
       
 21043     field(AFVL, DBF_DOUBLE) {
       
 21044         special(SPC_NOMOD)
       
 21045         interest(3)
       
 21046         prompt("Alarm Filter Value")
       
 21047     }
       
 21048     field(ALST, DBF_DOUBLE) {
       
 21049         special(SPC_NOMOD)
       
 21050         interest(3)
       
 21051         prompt("Last Value Archived")
       
 21052     }
       
 21053     field(MLST, DBF_DOUBLE) {
       
 21054         special(SPC_NOMOD)
       
 21055         interest(3)
       
 21056         prompt("Last Val Monitored")
       
 21057     }
       
 21058     field(ESLO, DBF_DOUBLE) {
       
 21059         prompt("Raw to EGU Slope")
       
 21060         promptgroup("60 - Convert")
       
 21061         interest(2)
       
 21062         initial("1")
       
 21063         pp(TRUE)
       
 21064     }
       
 21065     field(EOFF, DBF_DOUBLE) {
       
 21066         promptgroup("60 - Convert")
       
 21067         interest(2)
       
 21068         prompt("Raw to EGU Offset")
       
 21069         pp(TRUE)
       
 21070     }
       
 21071     field(ROFF, DBF_ULONG) {
       
 21072         prompt("Raw Offset")
       
 21073         interest(2)
       
 21074         pp(TRUE)
       
 21075     }
       
 21076     field(PBRK, DBF_NOACCESS) {
       
 21077         interest(4)
       
 21078         special(SPC_NOMOD)
       
 21079         prompt("Ptrto brkTable")
       
 21080         extra("void *   pbrk")
       
 21081     }
       
 21082     field(INIT, DBF_SHORT) {
       
 21083         interest(3)
       
 21084         special(SPC_NOMOD)
       
 21085         prompt("Initialized?")
       
 21086     }
       
 21087     field(LBRK, DBF_SHORT) {
       
 21088         special(SPC_NOMOD)
       
 21089         interest(3)
       
 21090         prompt("LastBreak Point")
       
 21091     }
       
 21092     field(RVAL, DBF_LONG) {
       
 21093         pp(TRUE)
       
 21094         prompt("Current Raw Value")
       
 21095     }
       
 21096     field(ORAW, DBF_LONG) {
       
 21097         prompt("Previous Raw Value")
       
 21098         interest(3)
       
 21099         special(SPC_NOMOD)
       
 21100     }
       
 21101     field(SIOL, DBF_INLINK) {
       
 21102         interest(1)
       
 21103         promptgroup("90 - Simulate")
       
 21104         prompt("Simulation Input Link")
       
 21105     }
       
 21106     field(SVAL, DBF_DOUBLE) {
       
 21107         prompt("Simulation Value")
       
 21108     }
       
 21109     field(SIML, DBF_INLINK) {
       
 21110         prompt("Simulation Mode Link")
       
 21111         promptgroup("90 - Simulate")
       
 21112         interest(1)
       
 21113     }
       
 21114     field(SIMM, DBF_MENU) {
       
 21115         menu(menuSimm)
       
 21116         prompt("Simulation Mode")
       
 21117         interest(1)
       
 21118         special(SPC_MOD)
       
 21119     }
       
 21120     field(SIMS, DBF_MENU) {
       
 21121         menu(menuAlarmSevr)
       
 21122         promptgroup("90 - Simulate")
       
 21123         interest(2)
       
 21124         prompt("Simulation Mode Severity")
       
 21125     }
       
 21126     field(OLDSIMM, DBF_MENU) {
       
 21127         menu(menuSimm)
       
 21128         interest(4)
       
 21129         special(SPC_NOMOD)
       
 21130         prompt("Prev. Simulation Mode")
       
 21131     }
       
 21132     field(SSCN, DBF_MENU) {
       
 21133         initial("65535")
       
 21134         prompt("Sim. Mode Scan")
       
 21135         promptgroup("90 - Simulate")
       
 21136         interest(1)
       
 21137         menu(menuScan)
       
 21138     }
       
 21139     field(SDLY, DBF_DOUBLE) {
       
 21140         initial("-1.0")
       
 21141         interest(2)
       
 21142         promptgroup("90 - Simulate")
       
 21143         prompt("Sim. Mode Async Delay")
       
 21144     }
       
 21145     field(SIMPVT, DBF_NOACCESS) {
       
 21146         extra("CALLBACK            *simpvt")
       
 21147         interest(4)
       
 21148         special(SPC_NOMOD)
       
 21149         prompt("Sim. Mode Private")
       
 21150     }
       
 21151 }
       
 21152 device(ai, CONSTANT, devAiSoft, "Soft Channel")
       
 21153 device(ai, CONSTANT, devAiSoftRaw, "Raw Soft Channel")
       
 21154 device(ai, CONSTANT, devAiSoftCallback, "Async Soft Channel")
       
 21155 device(ai, INST_IO, devTimestampAI, "Soft Timestamp")
       
 21156 device(ai, INST_IO, devAiGeneralTime, "General Time")
       
 21157 device(ai, INST_IO, asynAiInt32, "asynInt32")
       
 21158 device(ai, INST_IO, asynAiInt32Average, "asynInt32Average")
       
 21159 device(ai, INST_IO, asynAiFloat64, "asynFloat64")
       
 21160 device(ai, INST_IO, asynAiFloat64Average, "asynFloat64Average")
       
 21161 device(ai, INST_IO, devaiStream, "stream")
       
 21162 device(ai, INST_IO, devAiStrParm, "asyn ai stringParm")
       
 21163 device(ai, INST_IO, devAiHeidND261, "asyn ai HeidND261")
       
 21164 device(ai, INST_IO, devAiMKS, "HPS SensaVac 937")
       
 21165 device(ai, INST_IO, devAiMPC, "asyn MPC")
       
 21166 device(ai, GPIB_IO, devAiGP307Gpib, "Vg307 GPIB Instrument")
       
 21167 device(ai, BBGPIB_IO, devAiAX301, "PZT Bug")
       
 21168 device(ai, INST_IO, devAiTelevac, "asyn Televac")
       
 21169 device(ai, INST_IO, devAiTPG261, "asyn TPG261")
       
 21170 recordtype(dfanout) {
       
 21171     %#include "epicsTypes.h"
       
 21172     %#include "link.h"
       
 21173     %#include "epicsMutex.h"
       
 21174     %#include "ellLib.h"
       
 21175     %#include "epicsTime.h"
       
 21176     field(NAME, DBF_STRING) {
       
 21177         prompt("Record Name")
       
 21178         special(SPC_NOMOD)
       
 21179         size(61)
       
 21180     }
       
 21181     field(DESC, DBF_STRING) {
       
 21182         prompt("Descriptor")
       
 21183         promptgroup("10 - Common")
       
 21184         size(41)
       
 21185     }
       
 21186     field(ASG, DBF_STRING) {
       
 21187         size(29)
       
 21188         promptgroup("10 - Common")
       
 21189         special(SPC_AS)
       
 21190         prompt("Access Security Group")
       
 21191     }
       
 21192     field(SCAN, DBF_MENU) {
       
 21193         promptgroup("20 - Scan")
       
 21194         interest(1)
       
 21195         special(SPC_SCAN)
       
 21196         prompt("Scan Mechanism")
       
 21197         menu(menuScan)
       
 21198     }
       
 21199     field(PINI, DBF_MENU) {
       
 21200         prompt("Process at iocInit")
       
 21201         interest(1)
       
 21202         promptgroup("20 - Scan")
       
 21203         menu(menuPini)
       
 21204     }
       
 21205     field(PHAS, DBF_SHORT) {
       
 21206         interest(1)
       
 21207         promptgroup("20 - Scan")
       
 21208         special(SPC_SCAN)
       
 21209         prompt("Scan Phase")
       
 21210     }
       
 21211     field(EVNT, DBF_STRING) {
       
 21212         prompt("Event Name")
       
 21213         interest(1)
       
 21214         special(SPC_SCAN)
       
 21215         promptgroup("20 - Scan")
       
 21216         size(40)
       
 21217     }
       
 21218     field(TSE, DBF_SHORT) {
       
 21219         prompt("Time Stamp Event")
       
 21220         interest(1)
       
 21221         promptgroup("20 - Scan")
       
 21222     }
       
 21223     field(TSEL, DBF_INLINK) {
       
 21224         interest(1)
       
 21225         promptgroup("20 - Scan")
       
 21226         prompt("Time Stamp Link")
       
 21227     }
       
 21228     field(DTYP, DBF_DEVICE) {
       
 21229         prompt("Device Type")
       
 21230         interest(1)
       
 21231         promptgroup("10 - Common")
       
 21232     }
       
 21233     field(DISV, DBF_SHORT) {
       
 21234         initial("1")
       
 21235         promptgroup("20 - Scan")
       
 21236         prompt("Disable Value")
       
 21237     }
       
 21238     field(DISA, DBF_SHORT) {
       
 21239         prompt("Disable")
       
 21240     }
       
 21241     field(SDIS, DBF_INLINK) {
       
 21242         promptgroup("20 - Scan")
       
 21243         interest(1)
       
 21244         prompt("Scanning Disable")
       
 21245     }
       
 21246     field(MLOK, DBF_NOACCESS) {
       
 21247         extra("epicsMutexId        mlok")
       
 21248         special(SPC_NOMOD)
       
 21249         interest(4)
       
 21250         prompt("Monitor lock")
       
 21251     }
       
 21252     field(MLIS, DBF_NOACCESS) {
       
 21253         extra("ELLLIST             mlis")
       
 21254         prompt("Monitor List")
       
 21255         special(SPC_NOMOD)
       
 21256         interest(4)
       
 21257     }
       
 21258     field(BKLNK, DBF_NOACCESS) {
       
 21259         special(SPC_NOMOD)
       
 21260         interest(4)
       
 21261         prompt("Backwards link tracking")
       
 21262         extra("ELLLIST             bklnk")
       
 21263     }
       
 21264     field(DISP, DBF_UCHAR) {
       
 21265         prompt("Disable putField")
       
 21266     }
       
 21267     field(PROC, DBF_UCHAR) {
       
 21268         interest(3)
       
 21269         prompt("Force Processing")
       
 21270         pp(TRUE)
       
 21271     }
       
 21272     field(STAT, DBF_MENU) {
       
 21273         initial("UDF")
       
 21274         menu(menuAlarmStat)
       
 21275         special(SPC_NOMOD)
       
 21276         prompt("Alarm Status")
       
 21277     }
       
 21278     field(SEVR, DBF_MENU) {
       
 21279         menu(menuAlarmSevr)
       
 21280         prompt("Alarm Severity")
       
 21281         special(SPC_NOMOD)
       
 21282     }
       
 21283     field(NSTA, DBF_MENU) {
       
 21284         prompt("New Alarm Status")
       
 21285         special(SPC_NOMOD)
       
 21286         interest(2)
       
 21287         menu(menuAlarmStat)
       
 21288     }
       
 21289     field(NSEV, DBF_MENU) {
       
 21290         prompt("New Alarm Severity")
       
 21291         interest(2)
       
 21292         special(SPC_NOMOD)
       
 21293         menu(menuAlarmSevr)
       
 21294     }
       
 21295     field(ACKS, DBF_MENU) {
       
 21296         interest(2)
       
 21297         special(SPC_NOMOD)
       
 21298         prompt("Alarm Ack Severity")
       
 21299         menu(menuAlarmSevr)
       
 21300     }
       
 21301     field(ACKT, DBF_MENU) {
       
 21302         initial("YES")
       
 21303         menu(menuYesNo)
       
 21304         interest(2)
       
 21305         special(SPC_NOMOD)
       
 21306         promptgroup("70 - Alarm")
       
 21307         prompt("Alarm Ack Transient")
       
 21308     }
       
 21309     field(DISS, DBF_MENU) {
       
 21310         promptgroup("70 - Alarm")
       
 21311         interest(1)
       
 21312         prompt("Disable Alarm Sevrty")
       
 21313         menu(menuAlarmSevr)
       
 21314     }
       
 21315     field(LCNT, DBF_UCHAR) {
       
 21316         prompt("Lock Count")
       
 21317         special(SPC_NOMOD)
       
 21318         interest(2)
       
 21319     }
       
 21320     field(PACT, DBF_UCHAR) {
       
 21321         interest(1)
       
 21322         special(SPC_NOMOD)
       
 21323         prompt("Record active")
       
 21324     }
       
 21325     field(PUTF, DBF_UCHAR) {
       
 21326         prompt("dbPutField process")
       
 21327         interest(1)
       
 21328         special(SPC_NOMOD)
       
 21329     }
       
 21330     field(RPRO, DBF_UCHAR) {
       
 21331         prompt("Reprocess ")
       
 21332         special(SPC_NOMOD)
       
 21333         interest(1)
       
 21334     }
       
 21335     field(ASP, DBF_NOACCESS) {
       
 21336         special(SPC_NOMOD)
       
 21337         interest(4)
       
 21338         prompt("Access Security Pvt")
       
 21339         extra("struct asgMember    *asp")
       
 21340     }
       
 21341     field(PPN, DBF_NOACCESS) {
       
 21342         special(SPC_NOMOD)
       
 21343         interest(4)
       
 21344         prompt("pprocessNotify")
       
 21345         extra("struct processNotify *ppn")
       
 21346     }
       
 21347     field(PPNR, DBF_NOACCESS) {
       
 21348         special(SPC_NOMOD)
       
 21349         interest(4)
       
 21350         prompt("pprocessNotifyRecord")
       
 21351         extra("struct processNotifyRecord *ppnr")
       
 21352     }
       
 21353     field(SPVT, DBF_NOACCESS) {
       
 21354         extra("struct scan_element *spvt")
       
 21355         special(SPC_NOMOD)
       
 21356         interest(4)
       
 21357         prompt("Scan Private")
       
 21358     }
       
 21359     field(RSET, DBF_NOACCESS) {
       
 21360         extra("struct typed_rset   *rset")
       
 21361         interest(4)
       
 21362         special(SPC_NOMOD)
       
 21363         prompt("Address of RSET")
       
 21364     }
       
 21365     field(DSET, DBF_NOACCESS) {
       
 21366         interest(4)
       
 21367         special(SPC_NOMOD)
       
 21368         prompt("DSET address")
       
 21369         extra("struct dset         *dset")
       
 21370     }
       
 21371     field(DPVT, DBF_NOACCESS) {
       
 21372         prompt("Device Private")
       
 21373         special(SPC_NOMOD)
       
 21374         interest(4)
       
 21375         extra("void                *dpvt")
       
 21376     }
       
 21377     field(RDES, DBF_NOACCESS) {
       
 21378         extra("struct dbRecordType *rdes")
       
 21379         interest(4)
       
 21380         special(SPC_NOMOD)
       
 21381         prompt("Address of dbRecordType")
       
 21382     }
       
 21383     field(LSET, DBF_NOACCESS) {
       
 21384         interest(4)
       
 21385         special(SPC_NOMOD)
       
 21386         prompt("Lock Set")
       
 21387         extra("struct lockRecord   *lset")
       
 21388     }
       
 21389     field(PRIO, DBF_MENU) {
       
 21390         menu(menuPriority)
       
 21391         prompt("Scheduling Priority")
       
 21392         interest(1)
       
 21393         promptgroup("20 - Scan")
       
 21394         special(SPC_SCAN)
       
 21395     }
       
 21396     field(TPRO, DBF_UCHAR) {
       
 21397         prompt("Trace Processing")
       
 21398     }
       
 21399     field(BKPT, DBF_NOACCESS) {
       
 21400         prompt("Break Point")
       
 21401         special(SPC_NOMOD)
       
 21402         interest(1)
       
 21403         extra("char                bkpt")
       
 21404     }
       
 21405     field(UDF, DBF_UCHAR) {
       
 21406         pp(TRUE)
       
 21407         initial("1")
       
 21408         prompt("Undefined")
       
 21409         promptgroup("10 - Common")
       
 21410         interest(1)
       
 21411     }
       
 21412     field(UDFS, DBF_MENU) {
       
 21413         initial("INVALID")
       
 21414         interest(1)
       
 21415         promptgroup("70 - Alarm")
       
 21416         prompt("Undefined Alarm Sevrty")
       
 21417         menu(menuAlarmSevr)
       
 21418     }
       
 21419     field(TIME, DBF_NOACCESS) {
       
 21420         extra("epicsTimeStamp      time")
       
 21421         special(SPC_NOMOD)
       
 21422         interest(2)
       
 21423         prompt("Time")
       
 21424     }
       
 21425     field(FLNK, DBF_FWDLINK) {
       
 21426         promptgroup("20 - Scan")
       
 21427         interest(1)
       
 21428         prompt("Forward Process Link")
       
 21429     }
       
 21430     field(VAL, DBF_DOUBLE) {
       
 21431         pp(TRUE)
       
 21432         asl(ASL0)
       
 21433         promptgroup("40 - Input")
       
 21434         prompt("Desired Output")
       
 21435     }
       
 21436     field(SELM, DBF_MENU) {
       
 21437         promptgroup("30 - Action")
       
 21438         interest(1)
       
 21439         prompt("Select Mechanism")
       
 21440         menu(dfanoutSELM)
       
 21441     }
       
 21442     field(SELN, DBF_USHORT) {
       
 21443         prompt("Link Selection")
       
 21444         interest(1)
       
 21445         initial("1")
       
 21446     }
       
 21447     field(SELL, DBF_INLINK) {
       
 21448         promptgroup("30 - Action")
       
 21449         interest(1)
       
 21450         prompt("Link Selection Loc")
       
 21451     }
       
 21452     field(OUTA, DBF_OUTLINK) {
       
 21453         prompt("Output Spec A")
       
 21454         promptgroup("50 - Output")
       
 21455         interest(1)
       
 21456     }
       
 21457     field(OUTB, DBF_OUTLINK) {
       
 21458         prompt("Output Spec B")
       
 21459         interest(1)
       
 21460         promptgroup("50 - Output")
       
 21461     }
       
 21462     field(OUTC, DBF_OUTLINK) {
       
 21463         prompt("Output Spec C")
       
 21464         promptgroup("50 - Output")
       
 21465         interest(1)
       
 21466     }
       
 21467     field(OUTD, DBF_OUTLINK) {
       
 21468         prompt("Output Spec D")
       
 21469         interest(1)
       
 21470         promptgroup("50 - Output")
       
 21471     }
       
 21472     field(OUTE, DBF_OUTLINK) {
       
 21473         prompt("Output Spec E")
       
 21474         promptgroup("50 - Output")
       
 21475         interest(1)
       
 21476     }
       
 21477     field(OUTF, DBF_OUTLINK) {
       
 21478         interest(1)
       
 21479         promptgroup("50 - Output")
       
 21480         prompt("Output Spec F")
       
 21481     }
       
 21482     field(OUTG, DBF_OUTLINK) {
       
 21483         promptgroup("50 - Output")
       
 21484         interest(1)
       
 21485         prompt("Output Spec G")
       
 21486     }
       
 21487     field(OUTH, DBF_OUTLINK) {
       
 21488         prompt("Output Spec H")
       
 21489         promptgroup("50 - Output")
       
 21490         interest(1)
       
 21491     }
       
 21492     field(DOL, DBF_INLINK) {
       
 21493         interest(1)
       
 21494         promptgroup("40 - Input")
       
 21495         prompt("Desired Output Loc")
       
 21496     }
       
 21497     field(OMSL, DBF_MENU) {
       
 21498         promptgroup("50 - Output")
       
 21499         interest(1)
       
 21500         prompt("Output Mode Select")
       
 21501         menu(menuOmsl)
       
 21502     }
       
 21503     field(EGU, DBF_STRING) {
       
 21504         prompt("Engineering Units")
       
 21505         promptgroup("80 - Display")
       
 21506         prop(YES)
       
 21507         interest(1)
       
 21508         size(16)
       
 21509     }
       
 21510     field(PREC, DBF_SHORT) {
       
 21511         promptgroup("80 - Display")
       
 21512         prop(YES)
       
 21513         interest(1)
       
 21514         prompt("Display Precision")
       
 21515     }
       
 21516     field(HOPR, DBF_DOUBLE) {
       
 21517         prompt("High Operating Range")
       
 21518         prop(YES)
       
 21519         interest(1)
       
 21520         promptgroup("80 - Display")
       
 21521     }
       
 21522     field(LOPR, DBF_DOUBLE) {
       
 21523         prop(YES)
       
 21524         interest(1)
       
 21525         promptgroup("80 - Display")
       
 21526         prompt("Low Operating Range")
       
 21527     }
       
 21528     field(HIHI, DBF_DOUBLE) {
       
 21529         promptgroup("70 - Alarm")
       
 21530         prop(YES)
       
 21531         interest(1)
       
 21532         prompt("Hihi Alarm Limit")
       
 21533         pp(TRUE)
       
 21534     }
       
 21535     field(LOLO, DBF_DOUBLE) {
       
 21536         pp(TRUE)
       
 21537         prompt("Lolo Alarm Limit")
       
 21538         prop(YES)
       
 21539         promptgroup("70 - Alarm")
       
 21540         interest(1)
       
 21541     }
       
 21542     field(HIGH, DBF_DOUBLE) {
       
 21543         pp(TRUE)
       
 21544         promptgroup("70 - Alarm")
       
 21545         prop(YES)
       
 21546         interest(1)
       
 21547         prompt("High Alarm Limit")
       
 21548     }
       
 21549     field(LOW, DBF_DOUBLE) {
       
 21550         pp(TRUE)
       
 21551         prompt("Low Alarm Limit")
       
 21552         promptgroup("70 - Alarm")
       
 21553         prop(YES)
       
 21554         interest(1)
       
 21555     }
       
 21556     field(HHSV, DBF_MENU) {
       
 21557         pp(TRUE)
       
 21558         interest(1)
       
 21559         prop(YES)
       
 21560         promptgroup("70 - Alarm")
       
 21561         prompt("Hihi Severity")
       
 21562         menu(menuAlarmSevr)
       
 21563     }
       
 21564     field(LLSV, DBF_MENU) {
       
 21565         pp(TRUE)
       
 21566         menu(menuAlarmSevr)
       
 21567         prompt("Lolo Severity")
       
 21568         prop(YES)
       
 21569         promptgroup("70 - Alarm")
       
 21570         interest(1)
       
 21571     }
       
 21572     field(HSV, DBF_MENU) {
       
 21573         pp(TRUE)
       
 21574         prompt("High Severity")
       
 21575         promptgroup("70 - Alarm")
       
 21576         prop(YES)
       
 21577         interest(1)
       
 21578         menu(menuAlarmSevr)
       
 21579     }
       
 21580     field(LSV, DBF_MENU) {
       
 21581         interest(1)
       
 21582         prop(YES)
       
 21583         promptgroup("70 - Alarm")
       
 21584         prompt("Low Severity")
       
 21585         menu(menuAlarmSevr)
       
 21586         pp(TRUE)
       
 21587     }
       
 21588     field(HYST, DBF_DOUBLE) {
       
 21589         prompt("Alarm Deadband")
       
 21590         promptgroup("70 - Alarm")
       
 21591         interest(1)
       
 21592     }
       
 21593     field(ADEL, DBF_DOUBLE) {
       
 21594         prompt("Archive Deadband")
       
 21595         interest(1)
       
 21596         promptgroup("80 - Display")
       
 21597     }
       
 21598     field(MDEL, DBF_DOUBLE) {
       
 21599         prompt("Monitor Deadband")
       
 21600         promptgroup("80 - Display")
       
 21601         interest(1)
       
 21602     }
       
 21603     field(LALM, DBF_DOUBLE) {
       
 21604         prompt("Last Value Alarmed")
       
 21605         interest(3)
       
 21606         special(SPC_NOMOD)
       
 21607     }
       
 21608     field(ALST, DBF_DOUBLE) {
       
 21609         prompt("Last Value Archived")
       
 21610         interest(3)
       
 21611         special(SPC_NOMOD)
       
 21612     }
       
 21613     field(MLST, DBF_DOUBLE) {
       
 21614         interest(3)
       
 21615         special(SPC_NOMOD)
       
 21616         prompt("Last Val Monitored")
       
 21617     }
       
 21618 }
       
 21619 recordtype(compress) {
       
 21620     %#include "epicsTypes.h"
       
 21621     %#include "link.h"
       
 21622     %#include "epicsMutex.h"
       
 21623     %#include "ellLib.h"
       
 21624     %#include "epicsTime.h"
       
 21625     field(NAME, DBF_STRING) {
       
 21626         prompt("Record Name")
       
 21627         special(SPC_NOMOD)
       
 21628         size(61)
       
 21629     }
       
 21630     field(DESC, DBF_STRING) {
       
 21631         promptgroup("10 - Common")
       
 21632         prompt("Descriptor")
       
 21633         size(41)
       
 21634     }
       
 21635     field(ASG, DBF_STRING) {
       
 21636         size(29)
       
 21637         prompt("Access Security Group")
       
 21638         special(SPC_AS)
       
 21639         promptgroup("10 - Common")
       
 21640     }
       
 21641     field(SCAN, DBF_MENU) {
       
 21642         menu(menuScan)
       
 21643         interest(1)
       
 21644         special(SPC_SCAN)
       
 21645         promptgroup("20 - Scan")
       
 21646         prompt("Scan Mechanism")
       
 21647     }
       
 21648     field(PINI, DBF_MENU) {
       
 21649         interest(1)
       
 21650         promptgroup("20 - Scan")
       
 21651         prompt("Process at iocInit")
       
 21652         menu(menuPini)
       
 21653     }
       
 21654     field(PHAS, DBF_SHORT) {
       
 21655         prompt("Scan Phase")
       
 21656         special(SPC_SCAN)
       
 21657         interest(1)
       
 21658         promptgroup("20 - Scan")
       
 21659     }
       
 21660     field(EVNT, DBF_STRING) {
       
 21661         promptgroup("20 - Scan")
       
 21662         interest(1)
       
 21663         special(SPC_SCAN)
       
 21664         prompt("Event Name")
       
 21665         size(40)
       
 21666     }
       
 21667     field(TSE, DBF_SHORT) {
       
 21668         promptgroup("20 - Scan")
       
 21669         interest(1)
       
 21670         prompt("Time Stamp Event")
       
 21671     }
       
 21672     field(TSEL, DBF_INLINK) {
       
 21673         prompt("Time Stamp Link")
       
 21674         interest(1)
       
 21675         promptgroup("20 - Scan")
       
 21676     }
       
 21677     field(DTYP, DBF_DEVICE) {
       
 21678         promptgroup("10 - Common")
       
 21679         interest(1)
       
 21680         prompt("Device Type")
       
 21681     }
       
 21682     field(DISV, DBF_SHORT) {
       
 21683         promptgroup("20 - Scan")
       
 21684         prompt("Disable Value")
       
 21685         initial("1")
       
 21686     }
       
 21687     field(DISA, DBF_SHORT) {
       
 21688         prompt("Disable")
       
 21689     }
       
 21690     field(SDIS, DBF_INLINK) {
       
 21691         prompt("Scanning Disable")
       
 21692         interest(1)
       
 21693         promptgroup("20 - Scan")
       
 21694     }
       
 21695     field(MLOK, DBF_NOACCESS) {
       
 21696         extra("epicsMutexId        mlok")
       
 21697         interest(4)
       
 21698         special(SPC_NOMOD)
       
 21699         prompt("Monitor lock")
       
 21700     }
       
 21701     field(MLIS, DBF_NOACCESS) {
       
 21702         interest(4)
       
 21703         special(SPC_NOMOD)
       
 21704         prompt("Monitor List")
       
 21705         extra("ELLLIST             mlis")
       
 21706     }
       
 21707     field(BKLNK, DBF_NOACCESS) {
       
 21708         extra("ELLLIST             bklnk")
       
 21709         prompt("Backwards link tracking")
       
 21710         interest(4)
       
 21711         special(SPC_NOMOD)
       
 21712     }
       
 21713     field(DISP, DBF_UCHAR) {
       
 21714         prompt("Disable putField")
       
 21715     }
       
 21716     field(PROC, DBF_UCHAR) {
       
 21717         pp(TRUE)
       
 21718         prompt("Force Processing")
       
 21719         interest(3)
       
 21720     }
       
 21721     field(STAT, DBF_MENU) {
       
 21722         menu(menuAlarmStat)
       
 21723         special(SPC_NOMOD)
       
 21724         prompt("Alarm Status")
       
 21725         initial("UDF")
       
 21726     }
       
 21727     field(SEVR, DBF_MENU) {
       
 21728         prompt("Alarm Severity")
       
 21729         special(SPC_NOMOD)
       
 21730         menu(menuAlarmSevr)
       
 21731     }
       
 21732     field(NSTA, DBF_MENU) {
       
 21733         special(SPC_NOMOD)
       
 21734         interest(2)
       
 21735         prompt("New Alarm Status")
       
 21736         menu(menuAlarmStat)
       
 21737     }
       
 21738     field(NSEV, DBF_MENU) {
       
 21739         prompt("New Alarm Severity")
       
 21740         interest(2)
       
 21741         special(SPC_NOMOD)
       
 21742         menu(menuAlarmSevr)
       
 21743     }
       
 21744     field(ACKS, DBF_MENU) {
       
 21745         menu(menuAlarmSevr)
       
 21746         prompt("Alarm Ack Severity")
       
 21747         interest(2)
       
 21748         special(SPC_NOMOD)
       
 21749     }
       
 21750     field(ACKT, DBF_MENU) {
       
 21751         initial("YES")
       
 21752         promptgroup("70 - Alarm")
       
 21753         interest(2)
       
 21754         special(SPC_NOMOD)
       
 21755         prompt("Alarm Ack Transient")
       
 21756         menu(menuYesNo)
       
 21757     }
       
 21758     field(DISS, DBF_MENU) {
       
 21759         prompt("Disable Alarm Sevrty")
       
 21760         interest(1)
       
 21761         promptgroup("70 - Alarm")
       
 21762         menu(menuAlarmSevr)
       
 21763     }
       
 21764     field(LCNT, DBF_UCHAR) {
       
 21765         prompt("Lock Count")
       
 21766         special(SPC_NOMOD)
       
 21767         interest(2)
       
 21768     }
       
 21769     field(PACT, DBF_UCHAR) {
       
 21770         prompt("Record active")
       
 21771         special(SPC_NOMOD)
       
 21772         interest(1)
       
 21773     }
       
 21774     field(PUTF, DBF_UCHAR) {
       
 21775         special(SPC_NOMOD)
       
 21776         interest(1)
       
 21777         prompt("dbPutField process")
       
 21778     }
       
 21779     field(RPRO, DBF_UCHAR) {
       
 21780         prompt("Reprocess ")
       
 21781         interest(1)
       
 21782         special(SPC_NOMOD)
       
 21783     }
       
 21784     field(ASP, DBF_NOACCESS) {
       
 21785         extra("struct asgMember    *asp")
       
 21786         prompt("Access Security Pvt")
       
 21787         special(SPC_NOMOD)
       
 21788         interest(4)
       
 21789     }
       
 21790     field(PPN, DBF_NOACCESS) {
       
 21791         interest(4)
       
 21792         special(SPC_NOMOD)
       
 21793         prompt("pprocessNotify")
       
 21794         extra("struct processNotify *ppn")
       
 21795     }
       
 21796     field(PPNR, DBF_NOACCESS) {
       
 21797         extra("struct processNotifyRecord *ppnr")
       
 21798         prompt("pprocessNotifyRecord")
       
 21799         interest(4)
       
 21800         special(SPC_NOMOD)
       
 21801     }
       
 21802     field(SPVT, DBF_NOACCESS) {
       
 21803         prompt("Scan Private")
       
 21804         special(SPC_NOMOD)
       
 21805         interest(4)
       
 21806         extra("struct scan_element *spvt")
       
 21807     }
       
 21808     field(RSET, DBF_NOACCESS) {
       
 21809         prompt("Address of RSET")
       
 21810         special(SPC_NOMOD)
       
 21811         interest(4)
       
 21812         extra("struct typed_rset   *rset")
       
 21813     }
       
 21814     field(DSET, DBF_NOACCESS) {
       
 21815         special(SPC_NOMOD)
       
 21816         interest(4)
       
 21817         prompt("DSET address")
       
 21818         extra("struct dset         *dset")
       
 21819     }
       
 21820     field(DPVT, DBF_NOACCESS) {
       
 21821         special(SPC_NOMOD)
       
 21822         interest(4)
       
 21823         prompt("Device Private")
       
 21824         extra("void                *dpvt")
       
 21825     }
       
 21826     field(RDES, DBF_NOACCESS) {
       
 21827         extra("struct dbRecordType *rdes")
       
 21828         prompt("Address of dbRecordType")
       
 21829         special(SPC_NOMOD)
       
 21830         interest(4)
       
 21831     }
       
 21832     field(LSET, DBF_NOACCESS) {
       
 21833         extra("struct lockRecord   *lset")
       
 21834         interest(4)
       
 21835         special(SPC_NOMOD)
       
 21836         prompt("Lock Set")
       
 21837     }
       
 21838     field(PRIO, DBF_MENU) {
       
 21839         menu(menuPriority)
       
 21840         interest(1)
       
 21841         special(SPC_SCAN)
       
 21842         promptgroup("20 - Scan")
       
 21843         prompt("Scheduling Priority")
       
 21844     }
       
 21845     field(TPRO, DBF_UCHAR) {
       
 21846         prompt("Trace Processing")
       
 21847     }
       
 21848     field(BKPT, DBF_NOACCESS) {
       
 21849         special(SPC_NOMOD)
       
 21850         interest(1)
       
 21851         prompt("Break Point")
       
 21852         extra("char                bkpt")
       
 21853     }
       
 21854     field(UDF, DBF_UCHAR) {
       
 21855         pp(TRUE)
       
 21856         initial("1")
       
 21857         prompt("Undefined")
       
 21858         promptgroup("10 - Common")
       
 21859         interest(1)
       
 21860     }
       
 21861     field(UDFS, DBF_MENU) {
       
 21862         prompt("Undefined Alarm Sevrty")
       
 21863         promptgroup("70 - Alarm")
       
 21864         interest(1)
       
 21865         menu(menuAlarmSevr)
       
 21866         initial("INVALID")
       
 21867     }
       
 21868     field(TIME, DBF_NOACCESS) {
       
 21869         special(SPC_NOMOD)
       
 21870         interest(2)
       
 21871         prompt("Time")
       
 21872         extra("epicsTimeStamp      time")
       
 21873     }
       
 21874     field(FLNK, DBF_FWDLINK) {
       
 21875         promptgroup("20 - Scan")
       
 21876         interest(1)
       
 21877         prompt("Forward Process Link")
       
 21878     }
       
 21879     field(VAL, DBF_NOACCESS) {
       
 21880         extra("void *		val")
       
 21881         pp(TRUE)
       
 21882         special(SPC_DBADDR)
       
 21883         prompt("Value")
       
 21884         asl(ASL0)
       
 21885     }
       
 21886     field(INP, DBF_INLINK) {
       
 21887         prompt("Input Specification")
       
 21888         promptgroup("40 - Input")
       
 21889         interest(1)
       
 21890     }
       
 21891     field(RES, DBF_SHORT) {
       
 21892         prompt("Reset")
       
 21893         interest(3)
       
 21894         special(SPC_RESET)
       
 21895         asl(ASL0)
       
 21896     }
       
 21897     field(ALG, DBF_MENU) {
       
 21898         promptgroup("30 - Action")
       
 21899         interest(1)
       
 21900         special(SPC_RESET)
       
 21901         prompt("Compression Algorithm")
       
 21902         menu(compressALG)
       
 21903     }
       
 21904     field(BALG, DBF_MENU) {
       
 21905         interest(1)
       
 21906         promptgroup("30 - Action")
       
 21907         special(SPC_RESET)
       
 21908         prompt("Buffering Algorithm")
       
 21909         menu(bufferingALG)
       
 21910     }
       
 21911     field(NSAM, DBF_ULONG) {
       
 21912         prompt("Number of Values")
       
 21913         promptgroup("30 - Action")
       
 21914         interest(1)
       
 21915         special(SPC_NOMOD)
       
 21916         initial("1")
       
 21917     }
       
 21918     field(N, DBF_ULONG) {
       
 21919         initial("1")
       
 21920         interest(1)
       
 21921         promptgroup("30 - Action")
       
 21922         special(SPC_RESET)
       
 21923         prompt("N to 1 Compression")
       
 21924     }
       
 21925     field(IHIL, DBF_DOUBLE) {
       
 21926         interest(1)
       
 21927         promptgroup("30 - Action")
       
 21928         prompt("Init High Interest Lim")
       
 21929     }
       
 21930     field(ILIL, DBF_DOUBLE) {
       
 21931         prompt("Init Low Interest Lim")
       
 21932         promptgroup("30 - Action")
       
 21933         interest(1)
       
 21934     }
       
 21935     field(HOPR, DBF_DOUBLE) {
       
 21936         prompt("High Operating Range")
       
 21937         prop(YES)
       
 21938         promptgroup("80 - Display")
       
 21939         interest(1)
       
 21940     }
       
 21941     field(LOPR, DBF_DOUBLE) {
       
 21942         prop(YES)
       
 21943         interest(1)
       
 21944         promptgroup("80 - Display")
       
 21945         prompt("Low Operating Range")
       
 21946     }
       
 21947     field(PREC, DBF_SHORT) {
       
 21948         prompt("Display Precision")
       
 21949         prop(YES)
       
 21950         interest(1)
       
 21951         promptgroup("80 - Display")
       
 21952     }
       
 21953     field(EGU, DBF_STRING) {
       
 21954         size(16)
       
 21955         promptgroup("80 - Display")
       
 21956         prop(YES)
       
 21957         interest(1)
       
 21958         prompt("Engineering Units")
       
 21959     }
       
 21960     field(OFF, DBF_ULONG) {
       
 21961         special(SPC_NOMOD)
       
 21962         prompt("Offset")
       
 21963     }
       
 21964     field(NUSE, DBF_ULONG) {
       
 21965         prompt("Number Used")
       
 21966         special(SPC_NOMOD)
       
 21967     }
       
 21968     field(OUSE, DBF_ULONG) {
       
 21969         special(SPC_NOMOD)
       
 21970         prompt("Old Number Used")
       
 21971     }
       
 21972     field(BPTR, DBF_NOACCESS) {
       
 21973         prompt("Buffer Pointer")
       
 21974         special(SPC_NOMOD)
       
 21975         interest(4)
       
 21976         extra("double		*bptr")
       
 21977     }
       
 21978     field(SPTR, DBF_NOACCESS) {
       
 21979         prompt("Summing Buffer Ptr")
       
 21980         special(SPC_NOMOD)
       
 21981         interest(4)
       
 21982         extra("double		*sptr")
       
 21983     }
       
 21984     field(WPTR, DBF_NOACCESS) {
       
 21985         special(SPC_NOMOD)
       
 21986         interest(4)
       
 21987         prompt("Working Buffer Ptr")
       
 21988         extra("double		*wptr")
       
 21989     }
       
 21990     field(INPN, DBF_LONG) {
       
 21991         interest(4)
       
 21992         special(SPC_NOMOD)
       
 21993         prompt("Number of elements in Working Buffer")
       
 21994     }
       
 21995     field(CVB, DBF_DOUBLE) {
       
 21996         interest(3)
       
 21997         special(SPC_NOMOD)
       
 21998         prompt("Compress Value Buffer")
       
 21999     }
       
 22000     field(INX, DBF_ULONG) {
       
 22001         prompt("Compressed Array Inx")
       
 22002         interest(3)
       
 22003         special(SPC_NOMOD)
       
 22004     }
       
 22005 }
       
 22006 recordtype(fanout) {
       
 22007     %#include "epicsTypes.h"
       
 22008     %#include "link.h"
       
 22009     %#include "epicsMutex.h"
       
 22010     %#include "ellLib.h"
       
 22011     %#include "epicsTime.h"
       
 22012     field(NAME, DBF_STRING) {
       
 22013         special(SPC_NOMOD)
       
 22014         prompt("Record Name")
       
 22015         size(61)
       
 22016     }
       
 22017     field(DESC, DBF_STRING) {
       
 22018         prompt("Descriptor")
       
 22019         promptgroup("10 - Common")
       
 22020         size(41)
       
 22021     }
       
 22022     field(ASG, DBF_STRING) {
       
 22023         prompt("Access Security Group")
       
 22024         promptgroup("10 - Common")
       
 22025         special(SPC_AS)
       
 22026         size(29)
       
 22027     }
       
 22028     field(SCAN, DBF_MENU) {
       
 22029         promptgroup("20 - Scan")
       
 22030         interest(1)
       
 22031         special(SPC_SCAN)
       
 22032         prompt("Scan Mechanism")
       
 22033         menu(menuScan)
       
 22034     }
       
 22035     field(PINI, DBF_MENU) {
       
 22036         prompt("Process at iocInit")
       
 22037         promptgroup("20 - Scan")
       
 22038         interest(1)
       
 22039         menu(menuPini)
       
 22040     }
       
 22041     field(PHAS, DBF_SHORT) {
       
 22042         interest(1)
       
 22043         promptgroup("20 - Scan")
       
 22044         special(SPC_SCAN)
       
 22045         prompt("Scan Phase")
       
 22046     }
       
 22047     field(EVNT, DBF_STRING) {
       
 22048         size(40)
       
 22049         prompt("Event Name")
       
 22050         interest(1)
       
 22051         special(SPC_SCAN)
       
 22052         promptgroup("20 - Scan")
       
 22053     }
       
 22054     field(TSE, DBF_SHORT) {
       
 22055         prompt("Time Stamp Event")
       
 22056         promptgroup("20 - Scan")
       
 22057         interest(1)
       
 22058     }
       
 22059     field(TSEL, DBF_INLINK) {
       
 22060         interest(1)
       
 22061         promptgroup("20 - Scan")
       
 22062         prompt("Time Stamp Link")
       
 22063     }
       
 22064     field(DTYP, DBF_DEVICE) {
       
 22065         interest(1)
       
 22066         promptgroup("10 - Common")
       
 22067         prompt("Device Type")
       
 22068     }
       
 22069     field(DISV, DBF_SHORT) {
       
 22070         initial("1")
       
 22071         prompt("Disable Value")
       
 22072         promptgroup("20 - Scan")
       
 22073     }
       
 22074     field(DISA, DBF_SHORT) {
       
 22075         prompt("Disable")
       
 22076     }
       
 22077     field(SDIS, DBF_INLINK) {
       
 22078         prompt("Scanning Disable")
       
 22079         promptgroup("20 - Scan")
       
 22080         interest(1)
       
 22081     }
       
 22082     field(MLOK, DBF_NOACCESS) {
       
 22083         extra("epicsMutexId        mlok")
       
 22084         prompt("Monitor lock")
       
 22085         special(SPC_NOMOD)
       
 22086         interest(4)
       
 22087     }
       
 22088     field(MLIS, DBF_NOACCESS) {
       
 22089         extra("ELLLIST             mlis")
       
 22090         prompt("Monitor List")
       
 22091         special(SPC_NOMOD)
       
 22092         interest(4)
       
 22093     }
       
 22094     field(BKLNK, DBF_NOACCESS) {
       
 22095         extra("ELLLIST             bklnk")
       
 22096         prompt("Backwards link tracking")
       
 22097         interest(4)
       
 22098         special(SPC_NOMOD)
       
 22099     }
       
 22100     field(DISP, DBF_UCHAR) {
       
 22101         prompt("Disable putField")
       
 22102     }
       
 22103     field(PROC, DBF_UCHAR) {
       
 22104         prompt("Force Processing")
       
 22105         interest(3)
       
 22106         pp(TRUE)
       
 22107     }
       
 22108     field(STAT, DBF_MENU) {
       
 22109         special(SPC_NOMOD)
       
 22110         prompt("Alarm Status")
       
 22111         menu(menuAlarmStat)
       
 22112         initial("UDF")
       
 22113     }
       
 22114     field(SEVR, DBF_MENU) {
       
 22115         menu(menuAlarmSevr)
       
 22116         prompt("Alarm Severity")
       
 22117         special(SPC_NOMOD)
       
 22118     }
       
 22119     field(NSTA, DBF_MENU) {
       
 22120         special(SPC_NOMOD)
       
 22121         interest(2)
       
 22122         prompt("New Alarm Status")
       
 22123         menu(menuAlarmStat)
       
 22124     }
       
 22125     field(NSEV, DBF_MENU) {
       
 22126         menu(menuAlarmSevr)
       
 22127         special(SPC_NOMOD)
       
 22128         interest(2)
       
 22129         prompt("New Alarm Severity")
       
 22130     }
       
 22131     field(ACKS, DBF_MENU) {
       
 22132         prompt("Alarm Ack Severity")
       
 22133         interest(2)
       
 22134         special(SPC_NOMOD)
       
 22135         menu(menuAlarmSevr)
       
 22136     }
       
 22137     field(ACKT, DBF_MENU) {
       
 22138         special(SPC_NOMOD)
       
 22139         interest(2)
       
 22140         promptgroup("70 - Alarm")
       
 22141         prompt("Alarm Ack Transient")
       
 22142         menu(menuYesNo)
       
 22143         initial("YES")
       
 22144     }
       
 22145     field(DISS, DBF_MENU) {
       
 22146         prompt("Disable Alarm Sevrty")
       
 22147         interest(1)
       
 22148         promptgroup("70 - Alarm")
       
 22149         menu(menuAlarmSevr)
       
 22150     }
       
 22151     field(LCNT, DBF_UCHAR) {
       
 22152         prompt("Lock Count")
       
 22153         special(SPC_NOMOD)
       
 22154         interest(2)
       
 22155     }
       
 22156     field(PACT, DBF_UCHAR) {
       
 22157         special(SPC_NOMOD)
       
 22158         interest(1)
       
 22159         prompt("Record active")
       
 22160     }
       
 22161     field(PUTF, DBF_UCHAR) {
       
 22162         prompt("dbPutField process")
       
 22163         special(SPC_NOMOD)
       
 22164         interest(1)
       
 22165     }
       
 22166     field(RPRO, DBF_UCHAR) {
       
 22167         prompt("Reprocess ")
       
 22168         interest(1)
       
 22169         special(SPC_NOMOD)
       
 22170     }
       
 22171     field(ASP, DBF_NOACCESS) {
       
 22172         extra("struct asgMember    *asp")
       
 22173         prompt("Access Security Pvt")
       
 22174         interest(4)
       
 22175         special(SPC_NOMOD)
       
 22176     }
       
 22177     field(PPN, DBF_NOACCESS) {
       
 22178         prompt("pprocessNotify")
       
 22179         special(SPC_NOMOD)
       
 22180         interest(4)
       
 22181         extra("struct processNotify *ppn")
       
 22182     }
       
 22183     field(PPNR, DBF_NOACCESS) {
       
 22184         prompt("pprocessNotifyRecord")
       
 22185         interest(4)
       
 22186         special(SPC_NOMOD)
       
 22187         extra("struct processNotifyRecord *ppnr")
       
 22188     }
       
 22189     field(SPVT, DBF_NOACCESS) {
       
 22190         extra("struct scan_element *spvt")
       
 22191         prompt("Scan Private")
       
 22192         special(SPC_NOMOD)
       
 22193         interest(4)
       
 22194     }
       
 22195     field(RSET, DBF_NOACCESS) {
       
 22196         special(SPC_NOMOD)
       
 22197         interest(4)
       
 22198         prompt("Address of RSET")
       
 22199         extra("struct typed_rset   *rset")
       
 22200     }
       
 22201     field(DSET, DBF_NOACCESS) {
       
 22202         extra("struct dset         *dset")
       
 22203         special(SPC_NOMOD)
       
 22204         interest(4)
       
 22205         prompt("DSET address")
       
 22206     }
       
 22207     field(DPVT, DBF_NOACCESS) {
       
 22208         extra("void                *dpvt")
       
 22209         interest(4)
       
 22210         special(SPC_NOMOD)
       
 22211         prompt("Device Private")
       
 22212     }
       
 22213     field(RDES, DBF_NOACCESS) {
       
 22214         extra("struct dbRecordType *rdes")
       
 22215         special(SPC_NOMOD)
       
 22216         interest(4)
       
 22217         prompt("Address of dbRecordType")
       
 22218     }
       
 22219     field(LSET, DBF_NOACCESS) {
       
 22220         special(SPC_NOMOD)
       
 22221         interest(4)
       
 22222         prompt("Lock Set")
       
 22223         extra("struct lockRecord   *lset")
       
 22224     }
       
 22225     field(PRIO, DBF_MENU) {
       
 22226         prompt("Scheduling Priority")
       
 22227         interest(1)
       
 22228         special(SPC_SCAN)
       
 22229         promptgroup("20 - Scan")
       
 22230         menu(menuPriority)
       
 22231     }
       
 22232     field(TPRO, DBF_UCHAR) {
       
 22233         prompt("Trace Processing")
       
 22234     }
       
 22235     field(BKPT, DBF_NOACCESS) {
       
 22236         extra("char                bkpt")
       
 22237         prompt("Break Point")
       
 22238         special(SPC_NOMOD)
       
 22239         interest(1)
       
 22240     }
       
 22241     field(UDF, DBF_UCHAR) {
       
 22242         initial("1")
       
 22243         pp(TRUE)
       
 22244         prompt("Undefined")
       
 22245         interest(1)
       
 22246         promptgroup("10 - Common")
       
 22247     }
       
 22248     field(UDFS, DBF_MENU) {
       
 22249         menu(menuAlarmSevr)
       
 22250         prompt("Undefined Alarm Sevrty")
       
 22251         interest(1)
       
 22252         promptgroup("70 - Alarm")
       
 22253         initial("INVALID")
       
 22254     }
       
 22255     field(TIME, DBF_NOACCESS) {
       
 22256         extra("epicsTimeStamp      time")
       
 22257         prompt("Time")
       
 22258         interest(2)
       
 22259         special(SPC_NOMOD)
       
 22260     }
       
 22261     field(FLNK, DBF_FWDLINK) {
       
 22262         interest(1)
       
 22263         promptgroup("20 - Scan")
       
 22264         prompt("Forward Process Link")
       
 22265     }
       
 22266     field(VAL, DBF_LONG) {
       
 22267         pp(TRUE)
       
 22268         asl(ASL0)
       
 22269         prompt("Used to trigger")
       
 22270     }
       
 22271     field(SELM, DBF_MENU) {
       
 22272         prompt("Select Mechanism")
       
 22273         promptgroup("30 - Action")
       
 22274         interest(1)
       
 22275         menu(fanoutSELM)
       
 22276     }
       
 22277     field(SELN, DBF_USHORT) {
       
 22278         interest(1)
       
 22279         prompt("Link Selection")
       
 22280         initial("1")
       
 22281     }
       
 22282     field(SELL, DBF_INLINK) {
       
 22283         interest(1)
       
 22284         promptgroup("30 - Action")
       
 22285         prompt("Link Selection Loc")
       
 22286     }
       
 22287     field(OFFS, DBF_SHORT) {
       
 22288         initial("0")
       
 22289         prompt("Offset for Specified")
       
 22290         interest(1)
       
 22291         promptgroup("30 - Action")
       
 22292     }
       
 22293     field(SHFT, DBF_SHORT) {
       
 22294         promptgroup("30 - Action")
       
 22295         interest(1)
       
 22296         prompt("Shift for Mask mode")
       
 22297         initial("-1")
       
 22298     }
       
 22299     field(LNK0, DBF_FWDLINK) {
       
 22300         promptgroup("51 - Output 0-7")
       
 22301         interest(1)
       
 22302         prompt("Forward Link 0")
       
 22303     }
       
 22304     field(LNK1, DBF_FWDLINK) {
       
 22305         interest(1)
       
 22306         promptgroup("51 - Output 0-7")
       
 22307         prompt("Forward Link 1")
       
 22308     }
       
 22309     field(LNK2, DBF_FWDLINK) {
       
 22310         prompt("Forward Link 2")
       
 22311         interest(1)
       
 22312         promptgroup("51 - Output 0-7")
       
 22313     }
       
 22314     field(LNK3, DBF_FWDLINK) {
       
 22315         prompt("Forward Link 3")
       
 22316         interest(1)
       
 22317         promptgroup("51 - Output 0-7")
       
 22318     }
       
 22319     field(LNK4, DBF_FWDLINK) {
       
 22320         interest(1)
       
 22321         promptgroup("51 - Output 0-7")
       
 22322         prompt("Forward Link 4")
       
 22323     }
       
 22324     field(LNK5, DBF_FWDLINK) {
       
 22325         interest(1)
       
 22326         promptgroup("51 - Output 0-7")
       
 22327         prompt("Forward Link 5")
       
 22328     }
       
 22329     field(LNK6, DBF_FWDLINK) {
       
 22330         promptgroup("51 - Output 0-7")
       
 22331         interest(1)
       
 22332         prompt("Forward Link 6")
       
 22333     }
       
 22334     field(LNK7, DBF_FWDLINK) {
       
 22335         prompt("Forward Link 7")
       
 22336         promptgroup("51 - Output 0-7")
       
 22337         interest(1)
       
 22338     }
       
 22339     field(LNK8, DBF_FWDLINK) {
       
 22340         promptgroup("52 - Output 8-F")
       
 22341         interest(1)
       
 22342         prompt("Forward Link 8")
       
 22343     }
       
 22344     field(LNK9, DBF_FWDLINK) {
       
 22345         prompt("Forward Link 9")
       
 22346         promptgroup("52 - Output 8-F")
       
 22347         interest(1)
       
 22348     }
       
 22349     field(LNKA, DBF_FWDLINK) {
       
 22350         promptgroup("52 - Output 8-F")
       
 22351         interest(1)
       
 22352         prompt("Forward Link 10")
       
 22353     }
       
 22354     field(LNKB, DBF_FWDLINK) {
       
 22355         promptgroup("52 - Output 8-F")
       
 22356         interest(1)
       
 22357         prompt("Forward Link 11")
       
 22358     }
       
 22359     field(LNKC, DBF_FWDLINK) {
       
 22360         interest(1)
       
 22361         promptgroup("52 - Output 8-F")
       
 22362         prompt("Forward Link 12")
       
 22363     }
       
 22364     field(LNKD, DBF_FWDLINK) {
       
 22365         interest(1)
       
 22366         promptgroup("52 - Output 8-F")
       
 22367         prompt("Forward Link 13")
       
 22368     }
       
 22369     field(LNKE, DBF_FWDLINK) {
       
 22370         promptgroup("52 - Output 8-F")
       
 22371         interest(1)
       
 22372         prompt("Forward Link 14")
       
 22373     }
       
 22374     field(LNKF, DBF_FWDLINK) {
       
 22375         promptgroup("52 - Output 8-F")
       
 22376         interest(1)
       
 22377         prompt("Forward Link 15")
       
 22378     }
       
 22379 }
       
 22380 recordtype(longout) {
       
 22381     %#include "epicsTypes.h"
       
 22382     %#include "link.h"
       
 22383     %#include "epicsMutex.h"
       
 22384     %#include "ellLib.h"
       
 22385     %#include "epicsTime.h"
       
 22386     %#include "callback.h"
       
 22387     field(NAME, DBF_STRING) {
       
 22388         special(SPC_NOMOD)
       
 22389         prompt("Record Name")
       
 22390         size(61)
       
 22391     }
       
 22392     field(DESC, DBF_STRING) {
       
 22393         promptgroup("10 - Common")
       
 22394         prompt("Descriptor")
       
 22395         size(41)
       
 22396     }
       
 22397     field(ASG, DBF_STRING) {
       
 22398         promptgroup("10 - Common")
       
 22399         special(SPC_AS)
       
 22400         prompt("Access Security Group")
       
 22401         size(29)
       
 22402     }
       
 22403     field(SCAN, DBF_MENU) {
       
 22404         menu(menuScan)
       
 22405         prompt("Scan Mechanism")
       
 22406         promptgroup("20 - Scan")
       
 22407         interest(1)
       
 22408         special(SPC_SCAN)
       
 22409     }
       
 22410     field(PINI, DBF_MENU) {
       
 22411         menu(menuPini)
       
 22412         prompt("Process at iocInit")
       
 22413         interest(1)
       
 22414         promptgroup("20 - Scan")
       
 22415     }
       
 22416     field(PHAS, DBF_SHORT) {
       
 22417         prompt("Scan Phase")
       
 22418         promptgroup("20 - Scan")
       
 22419         interest(1)
       
 22420         special(SPC_SCAN)
       
 22421     }
       
 22422     field(EVNT, DBF_STRING) {
       
 22423         prompt("Event Name")
       
 22424         special(SPC_SCAN)
       
 22425         interest(1)
       
 22426         promptgroup("20 - Scan")
       
 22427         size(40)
       
 22428     }
       
 22429     field(TSE, DBF_SHORT) {
       
 22430         promptgroup("20 - Scan")
       
 22431         interest(1)
       
 22432         prompt("Time Stamp Event")
       
 22433     }
       
 22434     field(TSEL, DBF_INLINK) {
       
 22435         interest(1)
       
 22436         promptgroup("20 - Scan")
       
 22437         prompt("Time Stamp Link")
       
 22438     }
       
 22439     field(DTYP, DBF_DEVICE) {
       
 22440         interest(1)
       
 22441         promptgroup("10 - Common")
       
 22442         prompt("Device Type")
       
 22443     }
       
 22444     field(DISV, DBF_SHORT) {
       
 22445         promptgroup("20 - Scan")
       
 22446         prompt("Disable Value")
       
 22447         initial("1")
       
 22448     }
       
 22449     field(DISA, DBF_SHORT) {
       
 22450         prompt("Disable")
       
 22451     }
       
 22452     field(SDIS, DBF_INLINK) {
       
 22453         interest(1)
       
 22454         promptgroup("20 - Scan")
       
 22455         prompt("Scanning Disable")
       
 22456     }
       
 22457     field(MLOK, DBF_NOACCESS) {
       
 22458         special(SPC_NOMOD)
       
 22459         interest(4)
       
 22460         prompt("Monitor lock")
       
 22461         extra("epicsMutexId        mlok")
       
 22462     }
       
 22463     field(MLIS, DBF_NOACCESS) {
       
 22464         interest(4)
       
 22465         special(SPC_NOMOD)
       
 22466         prompt("Monitor List")
       
 22467         extra("ELLLIST             mlis")
       
 22468     }
       
 22469     field(BKLNK, DBF_NOACCESS) {
       
 22470         extra("ELLLIST             bklnk")
       
 22471         prompt("Backwards link tracking")
       
 22472         interest(4)
       
 22473         special(SPC_NOMOD)
       
 22474     }
       
 22475     field(DISP, DBF_UCHAR) {
       
 22476         prompt("Disable putField")
       
 22477     }
       
 22478     field(PROC, DBF_UCHAR) {
       
 22479         pp(TRUE)
       
 22480         prompt("Force Processing")
       
 22481         interest(3)
       
 22482     }
       
 22483     field(STAT, DBF_MENU) {
       
 22484         initial("UDF")
       
 22485         menu(menuAlarmStat)
       
 22486         special(SPC_NOMOD)
       
 22487         prompt("Alarm Status")
       
 22488     }
       
 22489     field(SEVR, DBF_MENU) {
       
 22490         menu(menuAlarmSevr)
       
 22491         prompt("Alarm Severity")
       
 22492         special(SPC_NOMOD)
       
 22493     }
       
 22494     field(NSTA, DBF_MENU) {
       
 22495         prompt("New Alarm Status")
       
 22496         special(SPC_NOMOD)
       
 22497         interest(2)
       
 22498         menu(menuAlarmStat)
       
 22499     }
       
 22500     field(NSEV, DBF_MENU) {
       
 22501         menu(menuAlarmSevr)
       
 22502         special(SPC_NOMOD)
       
 22503         interest(2)
       
 22504         prompt("New Alarm Severity")
       
 22505     }
       
 22506     field(ACKS, DBF_MENU) {
       
 22507         menu(menuAlarmSevr)
       
 22508         special(SPC_NOMOD)
       
 22509         interest(2)
       
 22510         prompt("Alarm Ack Severity")
       
 22511     }
       
 22512     field(ACKT, DBF_MENU) {
       
 22513         interest(2)
       
 22514         special(SPC_NOMOD)
       
 22515         promptgroup("70 - Alarm")
       
 22516         prompt("Alarm Ack Transient")
       
 22517         menu(menuYesNo)
       
 22518         initial("YES")
       
 22519     }
       
 22520     field(DISS, DBF_MENU) {
       
 22521         menu(menuAlarmSevr)
       
 22522         prompt("Disable Alarm Sevrty")
       
 22523         promptgroup("70 - Alarm")
       
 22524         interest(1)
       
 22525     }
       
 22526     field(LCNT, DBF_UCHAR) {
       
 22527         prompt("Lock Count")
       
 22528         special(SPC_NOMOD)
       
 22529         interest(2)
       
 22530     }
       
 22531     field(PACT, DBF_UCHAR) {
       
 22532         interest(1)
       
 22533         special(SPC_NOMOD)
       
 22534         prompt("Record active")
       
 22535     }
       
 22536     field(PUTF, DBF_UCHAR) {
       
 22537         prompt("dbPutField process")
       
 22538         interest(1)
       
 22539         special(SPC_NOMOD)
       
 22540     }
       
 22541     field(RPRO, DBF_UCHAR) {
       
 22542         prompt("Reprocess ")
       
 22543         interest(1)
       
 22544         special(SPC_NOMOD)
       
 22545     }
       
 22546     field(ASP, DBF_NOACCESS) {
       
 22547         prompt("Access Security Pvt")
       
 22548         special(SPC_NOMOD)
       
 22549         interest(4)
       
 22550         extra("struct asgMember    *asp")
       
 22551     }
       
 22552     field(PPN, DBF_NOACCESS) {
       
 22553         extra("struct processNotify *ppn")
       
 22554         prompt("pprocessNotify")
       
 22555         special(SPC_NOMOD)
       
 22556         interest(4)
       
 22557     }
       
 22558     field(PPNR, DBF_NOACCESS) {
       
 22559         extra("struct processNotifyRecord *ppnr")
       
 22560         special(SPC_NOMOD)
       
 22561         interest(4)
       
 22562         prompt("pprocessNotifyRecord")
       
 22563     }
       
 22564     field(SPVT, DBF_NOACCESS) {
       
 22565         extra("struct scan_element *spvt")
       
 22566         prompt("Scan Private")
       
 22567         interest(4)
       
 22568         special(SPC_NOMOD)
       
 22569     }
       
 22570     field(RSET, DBF_NOACCESS) {
       
 22571         interest(4)
       
 22572         special(SPC_NOMOD)
       
 22573         prompt("Address of RSET")
       
 22574         extra("struct typed_rset   *rset")
       
 22575     }
       
 22576     field(DSET, DBF_NOACCESS) {
       
 22577         extra("struct dset         *dset")
       
 22578         interest(4)
       
 22579         special(SPC_NOMOD)
       
 22580         prompt("DSET address")
       
 22581     }
       
 22582     field(DPVT, DBF_NOACCESS) {
       
 22583         interest(4)
       
 22584         special(SPC_NOMOD)
       
 22585         prompt("Device Private")
       
 22586         extra("void                *dpvt")
       
 22587     }
       
 22588     field(RDES, DBF_NOACCESS) {
       
 22589         extra("struct dbRecordType *rdes")
       
 22590         special(SPC_NOMOD)
       
 22591         interest(4)
       
 22592         prompt("Address of dbRecordType")
       
 22593     }
       
 22594     field(LSET, DBF_NOACCESS) {
       
 22595         prompt("Lock Set")
       
 22596         special(SPC_NOMOD)
       
 22597         interest(4)
       
 22598         extra("struct lockRecord   *lset")
       
 22599     }
       
 22600     field(PRIO, DBF_MENU) {
       
 22601         menu(menuPriority)
       
 22602         interest(1)
       
 22603         promptgroup("20 - Scan")
       
 22604         special(SPC_SCAN)
       
 22605         prompt("Scheduling Priority")
       
 22606     }
       
 22607     field(TPRO, DBF_UCHAR) {
       
 22608         prompt("Trace Processing")
       
 22609     }
       
 22610     field(BKPT, DBF_NOACCESS) {
       
 22611         special(SPC_NOMOD)
       
 22612         interest(1)
       
 22613         prompt("Break Point")
       
 22614         extra("char                bkpt")
       
 22615     }
       
 22616     field(UDF, DBF_UCHAR) {
       
 22617         initial("1")
       
 22618         pp(TRUE)
       
 22619         prompt("Undefined")
       
 22620         promptgroup("10 - Common")
       
 22621         interest(1)
       
 22622     }
       
 22623     field(UDFS, DBF_MENU) {
       
 22624         initial("INVALID")
       
 22625         promptgroup("70 - Alarm")
       
 22626         interest(1)
       
 22627         prompt("Undefined Alarm Sevrty")
       
 22628         menu(menuAlarmSevr)
       
 22629     }
       
 22630     field(TIME, DBF_NOACCESS) {
       
 22631         extra("epicsTimeStamp      time")
       
 22632         special(SPC_NOMOD)
       
 22633         interest(2)
       
 22634         prompt("Time")
       
 22635     }
       
 22636     field(FLNK, DBF_FWDLINK) {
       
 22637         promptgroup("20 - Scan")
       
 22638         interest(1)
       
 22639         prompt("Forward Process Link")
       
 22640     }
       
 22641     field(VAL, DBF_LONG) {
       
 22642         pp(TRUE)
       
 22643         prompt("Desired Output")
       
 22644         promptgroup("50 - Output")
       
 22645         asl(ASL0)
       
 22646     }
       
 22647     field(OUT, DBF_OUTLINK) {
       
 22648         prompt("Output Specification")
       
 22649         interest(1)
       
 22650         promptgroup("50 - Output")
       
 22651     }
       
 22652     field(DOL, DBF_INLINK) {
       
 22653         prompt("Desired Output Loc")
       
 22654         interest(1)
       
 22655         promptgroup("40 - Input")
       
 22656     }
       
 22657     field(OMSL, DBF_MENU) {
       
 22658         prompt("Output Mode Select")
       
 22659         interest(1)
       
 22660         promptgroup("50 - Output")
       
 22661         menu(menuOmsl)
       
 22662     }
       
 22663     field(EGU, DBF_STRING) {
       
 22664         prompt("Engineering Units")
       
 22665         prop(YES)
       
 22666         promptgroup("80 - Display")
       
 22667         interest(1)
       
 22668         size(16)
       
 22669     }
       
 22670     field(DRVH, DBF_LONG) {
       
 22671         pp(TRUE)
       
 22672         prop(YES)
       
 22673         promptgroup("30 - Action")
       
 22674         interest(1)
       
 22675         prompt("Drive High Limit")
       
 22676     }
       
 22677     field(DRVL, DBF_LONG) {
       
 22678         pp(TRUE)
       
 22679         promptgroup("30 - Action")
       
 22680         prop(YES)
       
 22681         interest(1)
       
 22682         prompt("Drive Low Limit")
       
 22683     }
       
 22684     field(HOPR, DBF_LONG) {
       
 22685         prompt("High Operating Range")
       
 22686         prop(YES)
       
 22687         interest(1)
       
 22688         promptgroup("80 - Display")
       
 22689     }
       
 22690     field(LOPR, DBF_LONG) {
       
 22691         prompt("Low Operating Range")
       
 22692         prop(YES)
       
 22693         promptgroup("80 - Display")
       
 22694         interest(1)
       
 22695     }
       
 22696     field(HIHI, DBF_LONG) {
       
 22697         interest(1)
       
 22698         prop(YES)
       
 22699         promptgroup("70 - Alarm")
       
 22700         prompt("Hihi Alarm Limit")
       
 22701         pp(TRUE)
       
 22702     }
       
 22703     field(LOLO, DBF_LONG) {
       
 22704         pp(TRUE)
       
 22705         prompt("Lolo Alarm Limit")
       
 22706         promptgroup("70 - Alarm")
       
 22707         prop(YES)
       
 22708         interest(1)
       
 22709     }
       
 22710     field(HIGH, DBF_LONG) {
       
 22711         prompt("High Alarm Limit")
       
 22712         prop(YES)
       
 22713         interest(1)
       
 22714         promptgroup("70 - Alarm")
       
 22715         pp(TRUE)
       
 22716     }
       
 22717     field(LOW, DBF_LONG) {
       
 22718         pp(TRUE)
       
 22719         promptgroup("70 - Alarm")
       
 22720         prop(YES)
       
 22721         interest(1)
       
 22722         prompt("Low Alarm Limit")
       
 22723     }
       
 22724     field(HHSV, DBF_MENU) {
       
 22725         pp(TRUE)
       
 22726         promptgroup("70 - Alarm")
       
 22727         interest(1)
       
 22728         prompt("Hihi Severity")
       
 22729         menu(menuAlarmSevr)
       
 22730     }
       
 22731     field(LLSV, DBF_MENU) {
       
 22732         pp(TRUE)
       
 22733         menu(menuAlarmSevr)
       
 22734         prompt("Lolo Severity")
       
 22735         interest(1)
       
 22736         promptgroup("70 - Alarm")
       
 22737     }
       
 22738     field(HSV, DBF_MENU) {
       
 22739         menu(menuAlarmSevr)
       
 22740         prompt("High Severity")
       
 22741         promptgroup("70 - Alarm")
       
 22742         interest(1)
       
 22743         pp(TRUE)
       
 22744     }
       
 22745     field(LSV, DBF_MENU) {
       
 22746         promptgroup("70 - Alarm")
       
 22747         interest(1)
       
 22748         prompt("Low Severity")
       
 22749         menu(menuAlarmSevr)
       
 22750         pp(TRUE)
       
 22751     }
       
 22752     field(HYST, DBF_LONG) {
       
 22753         promptgroup("70 - Alarm")
       
 22754         interest(1)
       
 22755         prompt("Alarm Deadband")
       
 22756     }
       
 22757     field(ADEL, DBF_LONG) {
       
 22758         prompt("Archive Deadband")
       
 22759         interest(1)
       
 22760         promptgroup("80 - Display")
       
 22761     }
       
 22762     field(MDEL, DBF_LONG) {
       
 22763         interest(1)
       
 22764         promptgroup("80 - Display")
       
 22765         prompt("Monitor Deadband")
       
 22766     }
       
 22767     field(LALM, DBF_LONG) {
       
 22768         special(SPC_NOMOD)
       
 22769         interest(3)
       
 22770         prompt("Last Value Alarmed")
       
 22771     }
       
 22772     field(ALST, DBF_LONG) {
       
 22773         prompt("Last Value Archived")
       
 22774         special(SPC_NOMOD)
       
 22775         interest(3)
       
 22776     }
       
 22777     field(MLST, DBF_LONG) {
       
 22778         special(SPC_NOMOD)
       
 22779         interest(3)
       
 22780         prompt("Last Val Monitored")
       
 22781     }
       
 22782     field(SIOL, DBF_OUTLINK) {
       
 22783         interest(1)
       
 22784         promptgroup("90 - Simulate")
       
 22785         prompt("Simulation Output Link")
       
 22786     }
       
 22787     field(SIML, DBF_INLINK) {
       
 22788         prompt("Simulation Mode Link")
       
 22789         promptgroup("90 - Simulate")
       
 22790         interest(1)
       
 22791     }
       
 22792     field(SIMM, DBF_MENU) {
       
 22793         menu(menuYesNo)
       
 22794         prompt("Simulation Mode")
       
 22795         special(SPC_MOD)
       
 22796         interest(1)
       
 22797     }
       
 22798     field(SIMS, DBF_MENU) {
       
 22799         menu(menuAlarmSevr)
       
 22800         prompt("Simulation Mode Severity")
       
 22801         interest(2)
       
 22802         promptgroup("90 - Simulate")
       
 22803     }
       
 22804     field(OLDSIMM, DBF_MENU) {
       
 22805         special(SPC_NOMOD)
       
 22806         interest(4)
       
 22807         prompt("Prev. Simulation Mode")
       
 22808         menu(menuSimm)
       
 22809     }
       
 22810     field(SSCN, DBF_MENU) {
       
 22811         prompt("Sim. Mode Scan")
       
 22812         promptgroup("90 - Simulate")
       
 22813         interest(1)
       
 22814         menu(menuScan)
       
 22815         initial("65535")
       
 22816     }
       
 22817     field(SDLY, DBF_DOUBLE) {
       
 22818         prompt("Sim. Mode Async Delay")
       
 22819         promptgroup("90 - Simulate")
       
 22820         interest(2)
       
 22821         initial("-1.0")
       
 22822     }
       
 22823     field(SIMPVT, DBF_NOACCESS) {
       
 22824         extra("CALLBACK            *simpvt")
       
 22825         prompt("Sim. Mode Private")
       
 22826         interest(4)
       
 22827         special(SPC_NOMOD)
       
 22828     }
       
 22829     field(IVOA, DBF_MENU) {
       
 22830         prompt("INVALID output action")
       
 22831         promptgroup("50 - Output")
       
 22832         interest(2)
       
 22833         menu(menuIvoa)
       
 22834     }
       
 22835     field(IVOV, DBF_LONG) {
       
 22836         interest(2)
       
 22837         promptgroup("50 - Output")
       
 22838         prompt("INVALID output value")
       
 22839     }
       
 22840 }
       
 22841 device(longout, CONSTANT, devLoSoft, "Soft Channel")
       
 22842 device(longout, CONSTANT, devLoSoftCallback, "Async Soft Channel")
       
 22843 device(longout, INST_IO, asynLoInt32, "asynInt32")
       
 22844 device(longout, INST_IO, asynLoUInt32Digital, "asynUInt32Digital")
       
 22845 device(longout, INST_IO, devlongoutStream, "stream")
       
 22846 device(longout, INST_IO, devLoStrParm, "asyn lo stringParm")
       
 22847 device(longout, BBGPIB_IO, devLoAX301, "PZT Bug")
       
 22848 recordtype(lso) {
       
 22849     %#include "epicsTypes.h"
 22568     %#include "epicsTypes.h"
 22850     %#include "link.h"
 22569     %#include "link.h"
 22851     %#include "epicsMutex.h"
 22570     %#include "epicsMutex.h"
 22852     %#include "ellLib.h"
 22571     %#include "ellLib.h"
 22853     %#include "epicsTime.h"
 22572     %#include "epicsTime.h"
 22854     %#include "devSup.h"
 22573     %#include "devSup.h"
 22855     %
 22574     %
 22856     %/* Declare Device Support Entry Table */
 22575     %/* Declare Device Support Entry Table */
 22857     %typedef struct lsodset {
 22576     %typedef struct lsidset {
 22858     %    long number;
 22577     %    long number;
 22859     %    DEVSUPFUN report;
 22578     %    DEVSUPFUN report;
 22860     %    DEVSUPFUN init;
 22579     %    DEVSUPFUN init;
 22861     %    DEVSUPFUN init_record;
 22580     %    DEVSUPFUN init_record;
 22862     %    DEVSUPFUN get_ioint_info;
 22581     %    DEVSUPFUN get_ioint_info;
 22863     %    DEVSUPFUN write_string;
 22582     %    DEVSUPFUN read_string;
 22864     %} lsodset;
 22583     %} lsidset;
 22865     %
 22584     %
 22866     %#include "callback.h"
 22585     %#include "callback.h"
 22867     field(NAME, DBF_STRING) {
 22586     field(NAME, DBF_STRING) {
       
 22587         special(SPC_NOMOD)
       
 22588         size(61)
 22868         prompt("Record Name")
 22589         prompt("Record Name")
 22869         special(SPC_NOMOD)
       
 22870         size(61)
       
 22871     }
 22590     }
 22872     field(DESC, DBF_STRING) {
 22591     field(DESC, DBF_STRING) {
       
 22592         prompt("Descriptor")
 22873         size(41)
 22593         size(41)
 22874         prompt("Descriptor")
       
 22875         promptgroup("10 - Common")
 22594         promptgroup("10 - Common")
 22876     }
 22595     }
 22877     field(ASG, DBF_STRING) {
 22596     field(ASG, DBF_STRING) {
       
 22597         special(SPC_AS)
       
 22598         promptgroup("10 - Common")
       
 22599         size(29)
 22878         prompt("Access Security Group")
 22600         prompt("Access Security Group")
 22879         promptgroup("10 - Common")
       
 22880         special(SPC_AS)
       
 22881         size(29)
       
 22882     }
 22601     }
 22883     field(SCAN, DBF_MENU) {
 22602     field(SCAN, DBF_MENU) {
       
 22603         promptgroup("20 - Scan")
 22884         menu(menuScan)
 22604         menu(menuScan)
 22885         interest(1)
 22605         interest(1)
 22886         promptgroup("20 - Scan")
       
 22887         special(SPC_SCAN)
 22606         special(SPC_SCAN)
 22888         prompt("Scan Mechanism")
 22607         prompt("Scan Mechanism")
 22889     }
 22608     }
 22890     field(PINI, DBF_MENU) {
 22609     field(PINI, DBF_MENU) {
       
 22610         interest(1)
       
 22611         menu(menuPini)
       
 22612         promptgroup("20 - Scan")
 22891         prompt("Process at iocInit")
 22613         prompt("Process at iocInit")
 22892         promptgroup("20 - Scan")
       
 22893         interest(1)
       
 22894         menu(menuPini)
       
 22895     }
 22614     }
 22896     field(PHAS, DBF_SHORT) {
 22615     field(PHAS, DBF_SHORT) {
       
 22616         prompt("Scan Phase")
       
 22617         promptgroup("20 - Scan")
 22897         interest(1)
 22618         interest(1)
 22898         special(SPC_SCAN)
 22619         special(SPC_SCAN)
 22899         promptgroup("20 - Scan")
       
 22900         prompt("Scan Phase")
       
 22901     }
 22620     }
 22902     field(EVNT, DBF_STRING) {
 22621     field(EVNT, DBF_STRING) {
       
 22622         interest(1)
       
 22623         special(SPC_SCAN)
       
 22624         promptgroup("20 - Scan")
 22903         size(40)
 22625         size(40)
 22904         prompt("Event Name")
 22626         prompt("Event Name")
 22905         promptgroup("20 - Scan")
       
 22906         interest(1)
       
 22907         special(SPC_SCAN)
       
 22908     }
 22627     }
 22909     field(TSE, DBF_SHORT) {
 22628     field(TSE, DBF_SHORT) {
 22910         interest(1)
       
 22911         promptgroup("20 - Scan")
       
 22912         prompt("Time Stamp Event")
 22629         prompt("Time Stamp Event")
       
 22630         interest(1)
       
 22631         promptgroup("20 - Scan")
 22913     }
 22632     }
 22914     field(TSEL, DBF_INLINK) {
 22633     field(TSEL, DBF_INLINK) {
 22915         prompt("Time Stamp Link")
 22634         prompt("Time Stamp Link")
 22916         interest(1)
 22635         promptgroup("20 - Scan")
 22917         promptgroup("20 - Scan")
 22636         interest(1)
 22918     }
 22637     }
 22919     field(DTYP, DBF_DEVICE) {
 22638     field(DTYP, DBF_DEVICE) {
       
 22639         interest(1)
       
 22640         promptgroup("10 - Common")
 22920         prompt("Device Type")
 22641         prompt("Device Type")
 22921         promptgroup("10 - Common")
       
 22922         interest(1)
       
 22923     }
 22642     }
 22924     field(DISV, DBF_SHORT) {
 22643     field(DISV, DBF_SHORT) {
 22925         initial("1")
 22644         initial("1")
 22926         promptgroup("20 - Scan")
       
 22927         prompt("Disable Value")
 22645         prompt("Disable Value")
       
 22646         promptgroup("20 - Scan")
 22928     }
 22647     }
 22929     field(DISA, DBF_SHORT) {
 22648     field(DISA, DBF_SHORT) {
 22930         prompt("Disable")
 22649         prompt("Disable")
 22931     }
 22650     }
 22932     field(SDIS, DBF_INLINK) {
 22651     field(SDIS, DBF_INLINK) {
 22933         promptgroup("20 - Scan")
       
 22934         interest(1)
       
 22935         prompt("Scanning Disable")
 22652         prompt("Scanning Disable")
       
 22653         promptgroup("20 - Scan")
       
 22654         interest(1)
 22936     }
 22655     }
 22937     field(MLOK, DBF_NOACCESS) {
 22656     field(MLOK, DBF_NOACCESS) {
       
 22657         prompt("Monitor lock")
 22938         extra("epicsMutexId        mlok")
 22658         extra("epicsMutexId        mlok")
 22939         prompt("Monitor lock")
 22659         interest(4)
 22940         special(SPC_NOMOD)
 22660         special(SPC_NOMOD)
 22941         interest(4)
       
 22942     }
 22661     }
 22943     field(MLIS, DBF_NOACCESS) {
 22662     field(MLIS, DBF_NOACCESS) {
       
 22663         special(SPC_NOMOD)
       
 22664         interest(4)
       
 22665         extra("ELLLIST             mlis")
 22944         prompt("Monitor List")
 22666         prompt("Monitor List")
 22945         special(SPC_NOMOD)
       
 22946         interest(4)
       
 22947         extra("ELLLIST             mlis")
       
 22948     }
 22667     }
 22949     field(BKLNK, DBF_NOACCESS) {
 22668     field(BKLNK, DBF_NOACCESS) {
       
 22669         special(SPC_NOMOD)
       
 22670         interest(4)
       
 22671         prompt("Backwards link tracking")
 22950         extra("ELLLIST             bklnk")
 22672         extra("ELLLIST             bklnk")
 22951         prompt("Backwards link tracking")
       
 22952         interest(4)
       
 22953         special(SPC_NOMOD)
       
 22954     }
 22673     }
 22955     field(DISP, DBF_UCHAR) {
 22674     field(DISP, DBF_UCHAR) {
 22956         prompt("Disable putField")
 22675         prompt("Disable putField")
 22957     }
 22676     }
 22958     field(PROC, DBF_UCHAR) {
 22677     field(PROC, DBF_UCHAR) {
       
 22678         pp(TRUE)
 22959         interest(3)
 22679         interest(3)
 22960         prompt("Force Processing")
 22680         prompt("Force Processing")
 22961         pp(TRUE)
       
 22962     }
 22681     }
 22963     field(STAT, DBF_MENU) {
 22682     field(STAT, DBF_MENU) {
       
 22683         prompt("Alarm Status")
 22964         initial("UDF")
 22684         initial("UDF")
 22965         menu(menuAlarmStat)
 22685         menu(menuAlarmStat)
 22966         prompt("Alarm Status")
       
 22967         special(SPC_NOMOD)
 22686         special(SPC_NOMOD)
 22968     }
 22687     }
 22969     field(SEVR, DBF_MENU) {
 22688     field(SEVR, DBF_MENU) {
 22970         menu(menuAlarmSevr)
       
 22971         special(SPC_NOMOD)
       
 22972         prompt("Alarm Severity")
 22689         prompt("Alarm Severity")
       
 22690         special(SPC_NOMOD)
       
 22691         menu(menuAlarmSevr)
 22973     }
 22692     }
 22974     field(NSTA, DBF_MENU) {
 22693     field(NSTA, DBF_MENU) {
 22975         special(SPC_NOMOD)
       
 22976         interest(2)
       
 22977         prompt("New Alarm Status")
 22694         prompt("New Alarm Status")
 22978         menu(menuAlarmStat)
 22695         menu(menuAlarmStat)
       
 22696         interest(2)
       
 22697         special(SPC_NOMOD)
 22979     }
 22698     }
 22980     field(NSEV, DBF_MENU) {
 22699     field(NSEV, DBF_MENU) {
       
 22700         menu(menuAlarmSevr)
 22981         interest(2)
 22701         interest(2)
 22982         special(SPC_NOMOD)
 22702         special(SPC_NOMOD)
 22983         prompt("New Alarm Severity")
 22703         prompt("New Alarm Severity")
 22984         menu(menuAlarmSevr)
       
 22985     }
 22704     }
 22986     field(ACKS, DBF_MENU) {
 22705     field(ACKS, DBF_MENU) {
       
 22706         special(SPC_NOMOD)
       
 22707         menu(menuAlarmSevr)
       
 22708         interest(2)
 22987         prompt("Alarm Ack Severity")
 22709         prompt("Alarm Ack Severity")
 22988         interest(2)
       
 22989         special(SPC_NOMOD)
       
 22990         menu(menuAlarmSevr)
       
 22991     }
 22710     }
 22992     field(ACKT, DBF_MENU) {
 22711     field(ACKT, DBF_MENU) {
 22993         promptgroup("70 - Alarm")
       
 22994         interest(2)
       
 22995         special(SPC_NOMOD)
       
 22996         prompt("Alarm Ack Transient")
 22712         prompt("Alarm Ack Transient")
       
 22713         initial("YES")
       
 22714         promptgroup("70 - Alarm")
       
 22715         special(SPC_NOMOD)
       
 22716         interest(2)
 22997         menu(menuYesNo)
 22717         menu(menuYesNo)
 22998         initial("YES")
       
 22999     }
 22718     }
 23000     field(DISS, DBF_MENU) {
 22719     field(DISS, DBF_MENU) {
 23001         menu(menuAlarmSevr)
 22720         promptgroup("70 - Alarm")
       
 22721         menu(menuAlarmSevr)
       
 22722         interest(1)
 23002         prompt("Disable Alarm Sevrty")
 22723         prompt("Disable Alarm Sevrty")
 23003         promptgroup("70 - Alarm")
       
 23004         interest(1)
       
 23005     }
 22724     }
 23006     field(LCNT, DBF_UCHAR) {
 22725     field(LCNT, DBF_UCHAR) {
 23007         interest(2)
       
 23008         special(SPC_NOMOD)
       
 23009         prompt("Lock Count")
 22726         prompt("Lock Count")
       
 22727         interest(2)
       
 22728         special(SPC_NOMOD)
 23010     }
 22729     }
 23011     field(PACT, DBF_UCHAR) {
 22730     field(PACT, DBF_UCHAR) {
 23012         special(SPC_NOMOD)
       
 23013         interest(1)
       
 23014         prompt("Record active")
 22731         prompt("Record active")
       
 22732         interest(1)
       
 22733         special(SPC_NOMOD)
 23015     }
 22734     }
 23016     field(PUTF, DBF_UCHAR) {
 22735     field(PUTF, DBF_UCHAR) {
 23017         prompt("dbPutField process")
 22736         prompt("dbPutField process")
 23018         interest(1)
 22737         special(SPC_NOMOD)
 23019         special(SPC_NOMOD)
 22738         interest(1)
 23020     }
 22739     }
 23021     field(RPRO, DBF_UCHAR) {
 22740     field(RPRO, DBF_UCHAR) {
 23022         interest(1)
       
 23023         special(SPC_NOMOD)
       
 23024         prompt("Reprocess ")
 22741         prompt("Reprocess ")
       
 22742         special(SPC_NOMOD)
       
 22743         interest(1)
 23025     }
 22744     }
 23026     field(ASP, DBF_NOACCESS) {
 22745     field(ASP, DBF_NOACCESS) {
       
 22746         interest(4)
       
 22747         special(SPC_NOMOD)
       
 22748         prompt("Access Security Pvt")
 23027         extra("struct asgMember    *asp")
 22749         extra("struct asgMember    *asp")
 23028         special(SPC_NOMOD)
       
 23029         interest(4)
       
 23030         prompt("Access Security Pvt")
       
 23031     }
 22750     }
 23032     field(PPN, DBF_NOACCESS) {
 22751     field(PPN, DBF_NOACCESS) {
 23033         interest(4)
 22752         interest(4)
 23034         special(SPC_NOMOD)
 22753         special(SPC_NOMOD)
 23035         prompt("pprocessNotify")
 22754         prompt("pprocessNotify")
 23036         extra("struct processNotify *ppn")
 22755         extra("struct processNotify *ppn")
 23037     }
 22756     }
 23038     field(PPNR, DBF_NOACCESS) {
 22757     field(PPNR, DBF_NOACCESS) {
 23039         special(SPC_NOMOD)
       
 23040         interest(4)
       
 23041         prompt("pprocessNotifyRecord")
 22758         prompt("pprocessNotifyRecord")
 23042         extra("struct processNotifyRecord *ppnr")
 22759         extra("struct processNotifyRecord *ppnr")
       
 22760         special(SPC_NOMOD)
       
 22761         interest(4)
 23043     }
 22762     }
 23044     field(SPVT, DBF_NOACCESS) {
 22763     field(SPVT, DBF_NOACCESS) {
 23045         extra("struct scan_element *spvt")
 22764         extra("struct scan_element *spvt")
 23046         prompt("Scan Private")
 22765         prompt("Scan Private")
 23047         special(SPC_NOMOD)
 22766         interest(4)
 23048         interest(4)
 22767         special(SPC_NOMOD)
 23049     }
 22768     }
 23050     field(RSET, DBF_NOACCESS) {
 22769     field(RSET, DBF_NOACCESS) {
       
 22770         interest(4)
       
 22771         special(SPC_NOMOD)
       
 22772         extra("struct typed_rset   *rset")
 23051         prompt("Address of RSET")
 22773         prompt("Address of RSET")
 23052         interest(4)
       
 23053         special(SPC_NOMOD)
       
 23054         extra("struct typed_rset   *rset")
       
 23055     }
 22774     }
 23056     field(DSET, DBF_NOACCESS) {
 22775     field(DSET, DBF_NOACCESS) {
 23057         prompt("DSET address")
 22776         prompt("DSET address")
 23058         special(SPC_NOMOD)
       
 23059         interest(4)
       
 23060         extra("struct dset         *dset")
 22777         extra("struct dset         *dset")
       
 22778         special(SPC_NOMOD)
       
 22779         interest(4)
 23061     }
 22780     }
 23062     field(DPVT, DBF_NOACCESS) {
 22781     field(DPVT, DBF_NOACCESS) {
 23063         special(SPC_NOMOD)
 22782         extra("void                *dpvt")
 23064         interest(4)
       
 23065         prompt("Device Private")
 22783         prompt("Device Private")
 23066         extra("void                *dpvt")
 22784         interest(4)
       
 22785         special(SPC_NOMOD)
 23067     }
 22786     }
 23068     field(RDES, DBF_NOACCESS) {
 22787     field(RDES, DBF_NOACCESS) {
       
 22788         interest(4)
       
 22789         special(SPC_NOMOD)
 23069         extra("struct dbRecordType *rdes")
 22790         extra("struct dbRecordType *rdes")
 23070         prompt("Address of dbRecordType")
 22791         prompt("Address of dbRecordType")
 23071         interest(4)
       
 23072         special(SPC_NOMOD)
       
 23073     }
 22792     }
 23074     field(LSET, DBF_NOACCESS) {
 22793     field(LSET, DBF_NOACCESS) {
       
 22794         interest(4)
       
 22795         special(SPC_NOMOD)
 23075         extra("struct lockRecord   *lset")
 22796         extra("struct lockRecord   *lset")
 23076         prompt("Lock Set")
 22797         prompt("Lock Set")
 23077         interest(4)
       
 23078         special(SPC_NOMOD)
       
 23079     }
 22798     }
 23080     field(PRIO, DBF_MENU) {
 22799     field(PRIO, DBF_MENU) {
       
 22800         promptgroup("20 - Scan")
 23081         menu(menuPriority)
 22801         menu(menuPriority)
 23082         interest(1)
 22802         interest(1)
 23083         special(SPC_SCAN)
 22803         special(SPC_SCAN)
 23084         promptgroup("20 - Scan")
       
 23085         prompt("Scheduling Priority")
 22804         prompt("Scheduling Priority")
 23086     }
 22805     }
 23087     field(TPRO, DBF_UCHAR) {
 22806     field(TPRO, DBF_UCHAR) {
 23088         prompt("Trace Processing")
 22807         prompt("Trace Processing")
 23089     }
 22808     }
 23090     field(BKPT, DBF_NOACCESS) {
 22809     field(BKPT, DBF_NOACCESS) {
 23091         interest(1)
       
 23092         special(SPC_NOMOD)
       
 23093         prompt("Break Point")
 22810         prompt("Break Point")
 23094         extra("char                bkpt")
 22811         extra("char                bkpt")
       
 22812         interest(1)
       
 22813         special(SPC_NOMOD)
 23095     }
 22814     }
 23096     field(UDF, DBF_UCHAR) {
 22815     field(UDF, DBF_UCHAR) {
 23097         pp(TRUE)
       
 23098         initial("1")
       
 23099         interest(1)
       
 23100         promptgroup("10 - Common")
       
 23101         prompt("Undefined")
 22816         prompt("Undefined")
       
 22817         initial("1")
       
 22818         pp(TRUE)
       
 22819         promptgroup("10 - Common")
       
 22820         interest(1)
 23102     }
 22821     }
 23103     field(UDFS, DBF_MENU) {
 22822     field(UDFS, DBF_MENU) {
 23104         menu(menuAlarmSevr)
 22823         initial("INVALID")
 23105         prompt("Undefined Alarm Sevrty")
 22824         prompt("Undefined Alarm Sevrty")
 23106         promptgroup("70 - Alarm")
 22825         menu(menuAlarmSevr)
 23107         interest(1)
 22826         interest(1)
 23108         initial("INVALID")
 22827         promptgroup("70 - Alarm")
 23109     }
 22828     }
 23110     field(TIME, DBF_NOACCESS) {
 22829     field(TIME, DBF_NOACCESS) {
       
 22830         special(SPC_NOMOD)
       
 22831         interest(2)
       
 22832         prompt("Time")
 23111         extra("epicsTimeStamp      time")
 22833         extra("epicsTimeStamp      time")
 23112         special(SPC_NOMOD)
       
 23113         interest(2)
       
 23114         prompt("Time")
       
 23115     }
 22834     }
 23116     field(FLNK, DBF_FWDLINK) {
 22835     field(FLNK, DBF_FWDLINK) {
 23117         prompt("Forward Process Link")
 22836         prompt("Forward Process Link")
 23118         interest(1)
 22837         interest(1)
 23119         promptgroup("20 - Scan")
 22838         promptgroup("20 - Scan")
 23120     }
 22839     }
 23121     field(VAL, DBF_NOACCESS) {
 22840     field(VAL, DBF_NOACCESS) {
       
 22841         pp(TRUE)
       
 22842         special(SPC_DBADDR)
       
 22843         prompt("Current Value")
 23122         asl(ASL0)
 22844         asl(ASL0)
 23123         prompt("Current Value")
 22845         extra("char *val")
       
 22846     }
       
 22847     field(OVAL, DBF_NOACCESS) {
       
 22848         interest(3)
 23124         special(SPC_DBADDR)
 22849         special(SPC_DBADDR)
 23125         pp(TRUE)
 22850         prompt("Old Value")
 23126         extra("char *val")
       
 23127     }
       
 23128     field(OVAL, DBF_NOACCESS) {
       
 23129         special(SPC_DBADDR)
       
 23130         interest(3)
       
 23131         prompt("Previous Value")
       
 23132         extra("char *oval")
 22851         extra("char *oval")
 23133     }
 22852     }
 23134     field(SIZV, DBF_USHORT) {
 22853     field(SIZV, DBF_USHORT) {
       
 22854         initial("41")
 23135         prompt("Size of buffers")
 22855         prompt("Size of buffers")
 23136         interest(1)
 22856         interest(1)
 23137         promptgroup("50 - Output")
 22857         special(SPC_NOMOD)
 23138         special(SPC_NOMOD)
 22858         promptgroup("40 - Input")
 23139         initial("41")
       
 23140     }
 22859     }
 23141     field(LEN, DBF_ULONG) {
 22860     field(LEN, DBF_ULONG) {
       
 22861         special(SPC_NOMOD)
 23142         prompt("Length of VAL")
 22862         prompt("Length of VAL")
 23143         special(SPC_NOMOD)
       
 23144     }
 22863     }
 23145     field(OLEN, DBF_ULONG) {
 22864     field(OLEN, DBF_ULONG) {
 23146         special(SPC_NOMOD)
 22865         special(SPC_NOMOD)
 23147         interest(3)
       
 23148         prompt("Length of OVAL")
 22866         prompt("Length of OVAL")
 23149     }
 22867     }
 23150     field(DOL, DBF_INLINK) {
 22868     field(INP, DBF_INLINK) {
 23151         interest(1)
       
 23152         promptgroup("40 - Input")
 22869         promptgroup("40 - Input")
 23153         prompt("Desired Output Link")
 22870         interest(1)
 23154     }
 22871         prompt("Input Specification")
 23155     field(IVOA, DBF_MENU) {
       
 23156         menu(menuIvoa)
       
 23157         prompt("INVALID Output Action")
       
 23158         interest(2)
       
 23159         promptgroup("50 - Output")
       
 23160     }
       
 23161     field(IVOV, DBF_STRING) {
       
 23162         size(40)
       
 23163         prompt("INVALID Output Value")
       
 23164         interest(2)
       
 23165         promptgroup("50 - Output")
       
 23166     }
       
 23167     field(OMSL, DBF_MENU) {
       
 23168         promptgroup("50 - Output")
       
 23169         interest(1)
       
 23170         prompt("Output Mode Select")
       
 23171         menu(menuOmsl)
       
 23172     }
       
 23173     field(OUT, DBF_OUTLINK) {
       
 23174         promptgroup("50 - Output")
       
 23175         interest(1)
       
 23176         prompt("Output Specification")
       
 23177     }
 22872     }
 23178     field(MPST, DBF_MENU) {
 22873     field(MPST, DBF_MENU) {
 23179         menu(menuPost)
 22874         menu(menuPost)
       
 22875         interest(1)
 23180         promptgroup("80 - Display")
 22876         promptgroup("80 - Display")
 23181         interest(1)
       
 23182         prompt("Post Value Monitors")
 22877         prompt("Post Value Monitors")
 23183     }
 22878     }
 23184     field(APST, DBF_MENU) {
 22879     field(APST, DBF_MENU) {
 23185         interest(1)
 22880         prompt("Post Archive Monitors")
 23186         promptgroup("80 - Display")
 22881         promptgroup("80 - Display")
 23187         prompt("Post Archive Monitors")
       
 23188         menu(menuPost)
 22882         menu(menuPost)
       
 22883         interest(1)
 23189     }
 22884     }
 23190     field(SIML, DBF_INLINK) {
 22885     field(SIML, DBF_INLINK) {
       
 22886         prompt("Simulation Mode Link")
       
 22887         interest(1)
 23191         promptgroup("90 - Simulate")
 22888         promptgroup("90 - Simulate")
 23192         interest(1)
       
 23193         prompt("Simulation Mode link")
       
 23194     }
 22889     }
 23195     field(SIMM, DBF_MENU) {
 22890     field(SIMM, DBF_MENU) {
       
 22891         prompt("Simulation Mode")
       
 22892         special(SPC_MOD)
       
 22893         interest(1)
 23196         menu(menuYesNo)
 22894         menu(menuYesNo)
 23197         special(SPC_MOD)
       
 23198         interest(1)
       
 23199         prompt("Simulation Mode")
       
 23200     }
 22895     }
 23201     field(SIMS, DBF_MENU) {
 22896     field(SIMS, DBF_MENU) {
 23202         menu(menuAlarmSevr)
       
 23203         promptgroup("90 - Simulate")
 22897         promptgroup("90 - Simulate")
 23204         interest(2)
 22898         interest(2)
       
 22899         menu(menuAlarmSevr)
 23205         prompt("Simulation Mode Severity")
 22900         prompt("Simulation Mode Severity")
 23206     }
 22901     }
 23207     field(SIOL, DBF_OUTLINK) {
 22902     field(SIOL, DBF_INLINK) {
 23208         prompt("Simulation Output Link")
 22903         prompt("Simulation Input Link")
 23209         promptgroup("90 - Simulate")
 22904         promptgroup("90 - Simulate")
 23210         interest(1)
 22905         interest(1)
 23211     }
 22906     }
 23212     field(OLDSIMM, DBF_MENU) {
 22907     field(OLDSIMM, DBF_MENU) {
 23213         prompt("Prev. Simulation Mode")
 22908         prompt("Prev. Simulation Mode")
 23214         interest(4)
       
 23215         special(SPC_NOMOD)
       
 23216         menu(menuSimm)
 22909         menu(menuSimm)
       
 22910         interest(4)
       
 22911         special(SPC_NOMOD)
 23217     }
 22912     }
 23218     field(SSCN, DBF_MENU) {
 22913     field(SSCN, DBF_MENU) {
       
 22914         initial("65535")
 23219         prompt("Sim. Mode Scan")
 22915         prompt("Sim. Mode Scan")
       
 22916         menu(menuScan)
       
 22917         interest(1)
 23220         promptgroup("90 - Simulate")
 22918         promptgroup("90 - Simulate")
 23221         interest(1)
       
 23222         menu(menuScan)
       
 23223         initial("65535")
       
 23224     }
 22919     }
 23225     field(SDLY, DBF_DOUBLE) {
 22920     field(SDLY, DBF_DOUBLE) {
 23226         initial("-1.0")
 22921         initial("-1.0")
 23227         prompt("Sim. Mode Async Delay")
 22922         prompt("Sim. Mode Async Delay")
       
 22923         interest(2)
 23228         promptgroup("90 - Simulate")
 22924         promptgroup("90 - Simulate")
 23229         interest(2)
       
 23230     }
 22925     }
 23231     field(SIMPVT, DBF_NOACCESS) {
 22926     field(SIMPVT, DBF_NOACCESS) {
 23232         interest(4)
 22927         extra("CALLBACK            *simpvt")
 23233         special(SPC_NOMOD)
       
 23234         prompt("Sim. Mode Private")
 22928         prompt("Sim. Mode Private")
 23235         extra("CALLBACK            *simpvt")
 22929         interest(4)
       
 22930         special(SPC_NOMOD)
 23236     }
 22931     }
 23237 }
 22932 }
 23238 device(lso, CONSTANT, devLsoSoft, "Soft Channel")
 22933 device(lsi, CONSTANT, devLsiSoft, "Soft Channel")
 23239 device(lso, CONSTANT, devLsoSoftCallback, "Async Soft Channel")
 22934 device(lsi, INST_IO, devLsiEnviron, "getenv")
 23240 device(lso, INST_IO, devLsoStdio, "stdio")
 22935 recordtype(swait) {
 23241 recordtype(mbboDirect) {
       
 23242     %#include "epicsTypes.h"
 22936     %#include "epicsTypes.h"
 23243     %#include "link.h"
 22937     %#include "link.h"
 23244     %#include "epicsMutex.h"
 22938     %#include "epicsMutex.h"
 23245     %#include "ellLib.h"
 22939     %#include "ellLib.h"
 23246     %#include "epicsTime.h"
 22940     %#include "epicsTime.h"
 23247     %#include "callback.h"
       
 23248     field(NAME, DBF_STRING) {
 22941     field(NAME, DBF_STRING) {
       
 22942         prompt("Record Name")
 23249         size(61)
 22943         size(61)
 23250         prompt("Record Name")
       
 23251         special(SPC_NOMOD)
 22944         special(SPC_NOMOD)
 23252     }
 22945     }
 23253     field(DESC, DBF_STRING) {
 22946     field(DESC, DBF_STRING) {
 23254         size(41)
 22947         size(41)
 23255         promptgroup("10 - Common")
       
 23256         prompt("Descriptor")
 22948         prompt("Descriptor")
       
 22949         promptgroup("10 - Common")
 23257     }
 22950     }
 23258     field(ASG, DBF_STRING) {
 22951     field(ASG, DBF_STRING) {
       
 22952         special(SPC_AS)
       
 22953         promptgroup("10 - Common")
 23259         size(29)
 22954         size(29)
 23260         prompt("Access Security Group")
 22955         prompt("Access Security Group")
 23261         promptgroup("10 - Common")
       
 23262         special(SPC_AS)
       
 23263     }
 22956     }
 23264     field(SCAN, DBF_MENU) {
 22957     field(SCAN, DBF_MENU) {
       
 22958         prompt("Scan Mechanism")
       
 22959         interest(1)
 23265         menu(menuScan)
 22960         menu(menuScan)
 23266         prompt("Scan Mechanism")
       
 23267         interest(1)
       
 23268         promptgroup("20 - Scan")
       
 23269         special(SPC_SCAN)
 22961         special(SPC_SCAN)
       
 22962         promptgroup("20 - Scan")
 23270     }
 22963     }
 23271     field(PINI, DBF_MENU) {
 22964     field(PINI, DBF_MENU) {
       
 22965         prompt("Process at iocInit")
 23272         menu(menuPini)
 22966         menu(menuPini)
 23273         prompt("Process at iocInit")
 22967         interest(1)
 23274         promptgroup("20 - Scan")
 22968         promptgroup("20 - Scan")
 23275         interest(1)
       
 23276     }
 22969     }
 23277     field(PHAS, DBF_SHORT) {
 22970     field(PHAS, DBF_SHORT) {
 23278         interest(1)
 22971         promptgroup("20 - Scan")
 23279         special(SPC_SCAN)
 22972         special(SPC_SCAN)
 23280         promptgroup("20 - Scan")
 22973         interest(1)
 23281         prompt("Scan Phase")
 22974         prompt("Scan Phase")
 23282     }
 22975     }
 23283     field(EVNT, DBF_STRING) {
 22976     field(EVNT, DBF_STRING) {
       
 22977         size(40)
       
 22978         prompt("Event Name")
 23284         interest(1)
 22979         interest(1)
 23285         special(SPC_SCAN)
 22980         special(SPC_SCAN)
 23286         promptgroup("20 - Scan")
 22981         promptgroup("20 - Scan")
 23287         prompt("Event Name")
       
 23288         size(40)
       
 23289     }
 22982     }
 23290     field(TSE, DBF_SHORT) {
 22983     field(TSE, DBF_SHORT) {
 23291         prompt("Time Stamp Event")
 22984         prompt("Time Stamp Event")
       
 22985         interest(1)
       
 22986         promptgroup("20 - Scan")
       
 22987     }
       
 22988     field(TSEL, DBF_INLINK) {
       
 22989         promptgroup("20 - Scan")
       
 22990         interest(1)
       
 22991         prompt("Time Stamp Link")
       
 22992     }
       
 22993     field(DTYP, DBF_DEVICE) {
       
 22994         interest(1)
       
 22995         promptgroup("10 - Common")
       
 22996         prompt("Device Type")
       
 22997     }
       
 22998     field(DISV, DBF_SHORT) {
       
 22999         initial("1")
       
 23000         prompt("Disable Value")
       
 23001         promptgroup("20 - Scan")
       
 23002     }
       
 23003     field(DISA, DBF_SHORT) {
       
 23004         prompt("Disable")
       
 23005     }
       
 23006     field(SDIS, DBF_INLINK) {
       
 23007         prompt("Scanning Disable")
       
 23008         promptgroup("20 - Scan")
       
 23009         interest(1)
       
 23010     }
       
 23011     field(MLOK, DBF_NOACCESS) {
       
 23012         interest(4)
       
 23013         special(SPC_NOMOD)
       
 23014         prompt("Monitor lock")
       
 23015         extra("epicsMutexId        mlok")
       
 23016     }
       
 23017     field(MLIS, DBF_NOACCESS) {
       
 23018         special(SPC_NOMOD)
       
 23019         interest(4)
       
 23020         extra("ELLLIST             mlis")
       
 23021         prompt("Monitor List")
       
 23022     }
       
 23023     field(BKLNK, DBF_NOACCESS) {
       
 23024         special(SPC_NOMOD)
       
 23025         interest(4)
       
 23026         extra("ELLLIST             bklnk")
       
 23027         prompt("Backwards link tracking")
       
 23028     }
       
 23029     field(DISP, DBF_UCHAR) {
       
 23030         prompt("Disable putField")
       
 23031     }
       
 23032     field(PROC, DBF_UCHAR) {
       
 23033         prompt("Force Processing")
       
 23034         pp(TRUE)
       
 23035         interest(3)
       
 23036     }
       
 23037     field(STAT, DBF_MENU) {
       
 23038         menu(menuAlarmStat)
       
 23039         special(SPC_NOMOD)
       
 23040         prompt("Alarm Status")
       
 23041         initial("UDF")
       
 23042     }
       
 23043     field(SEVR, DBF_MENU) {
       
 23044         menu(menuAlarmSevr)
       
 23045         special(SPC_NOMOD)
       
 23046         prompt("Alarm Severity")
       
 23047     }
       
 23048     field(NSTA, DBF_MENU) {
       
 23049         interest(2)
       
 23050         menu(menuAlarmStat)
       
 23051         special(SPC_NOMOD)
       
 23052         prompt("New Alarm Status")
       
 23053     }
       
 23054     field(NSEV, DBF_MENU) {
       
 23055         prompt("New Alarm Severity")
       
 23056         interest(2)
       
 23057         menu(menuAlarmSevr)
       
 23058         special(SPC_NOMOD)
       
 23059     }
       
 23060     field(ACKS, DBF_MENU) {
       
 23061         prompt("Alarm Ack Severity")
       
 23062         special(SPC_NOMOD)
       
 23063         interest(2)
       
 23064         menu(menuAlarmSevr)
       
 23065     }
       
 23066     field(ACKT, DBF_MENU) {
       
 23067         menu(menuYesNo)
       
 23068         interest(2)
       
 23069         special(SPC_NOMOD)
       
 23070         promptgroup("70 - Alarm")
       
 23071         initial("YES")
       
 23072         prompt("Alarm Ack Transient")
       
 23073     }
       
 23074     field(DISS, DBF_MENU) {
       
 23075         prompt("Disable Alarm Sevrty")
       
 23076         menu(menuAlarmSevr)
       
 23077         interest(1)
       
 23078         promptgroup("70 - Alarm")
       
 23079     }
       
 23080     field(LCNT, DBF_UCHAR) {
       
 23081         prompt("Lock Count")
       
 23082         special(SPC_NOMOD)
       
 23083         interest(2)
       
 23084     }
       
 23085     field(PACT, DBF_UCHAR) {
       
 23086         special(SPC_NOMOD)
       
 23087         interest(1)
       
 23088         prompt("Record active")
       
 23089     }
       
 23090     field(PUTF, DBF_UCHAR) {
       
 23091         prompt("dbPutField process")
       
 23092         special(SPC_NOMOD)
       
 23093         interest(1)
       
 23094     }
       
 23095     field(RPRO, DBF_UCHAR) {
       
 23096         prompt("Reprocess ")
       
 23097         special(SPC_NOMOD)
       
 23098         interest(1)
       
 23099     }
       
 23100     field(ASP, DBF_NOACCESS) {
       
 23101         special(SPC_NOMOD)
       
 23102         interest(4)
       
 23103         prompt("Access Security Pvt")
       
 23104         extra("struct asgMember    *asp")
       
 23105     }
       
 23106     field(PPN, DBF_NOACCESS) {
       
 23107         interest(4)
       
 23108         special(SPC_NOMOD)
       
 23109         prompt("pprocessNotify")
       
 23110         extra("struct processNotify *ppn")
       
 23111     }
       
 23112     field(PPNR, DBF_NOACCESS) {
       
 23113         prompt("pprocessNotifyRecord")
       
 23114         extra("struct processNotifyRecord *ppnr")
       
 23115         interest(4)
       
 23116         special(SPC_NOMOD)
       
 23117     }
       
 23118     field(SPVT, DBF_NOACCESS) {
       
 23119         prompt("Scan Private")
       
 23120         extra("struct scan_element *spvt")
       
 23121         interest(4)
       
 23122         special(SPC_NOMOD)
       
 23123     }
       
 23124     field(RSET, DBF_NOACCESS) {
       
 23125         interest(4)
       
 23126         special(SPC_NOMOD)
       
 23127         prompt("Address of RSET")
       
 23128         extra("struct typed_rset   *rset")
       
 23129     }
       
 23130     field(DSET, DBF_NOACCESS) {
       
 23131         interest(4)
       
 23132         special(SPC_NOMOD)
       
 23133         extra("struct dset         *dset")
       
 23134         prompt("DSET address")
       
 23135     }
       
 23136     field(DPVT, DBF_NOACCESS) {
       
 23137         extra("void                *dpvt")
       
 23138         prompt("Device Private")
       
 23139         interest(4)
       
 23140         special(SPC_NOMOD)
       
 23141     }
       
 23142     field(RDES, DBF_NOACCESS) {
       
 23143         prompt("Address of dbRecordType")
       
 23144         extra("struct dbRecordType *rdes")
       
 23145         special(SPC_NOMOD)
       
 23146         interest(4)
       
 23147     }
       
 23148     field(LSET, DBF_NOACCESS) {
       
 23149         special(SPC_NOMOD)
       
 23150         interest(4)
       
 23151         extra("struct lockRecord   *lset")
       
 23152         prompt("Lock Set")
       
 23153     }
       
 23154     field(PRIO, DBF_MENU) {
       
 23155         prompt("Scheduling Priority")
       
 23156         promptgroup("20 - Scan")
       
 23157         special(SPC_SCAN)
       
 23158         menu(menuPriority)
       
 23159         interest(1)
       
 23160     }
       
 23161     field(TPRO, DBF_UCHAR) {
       
 23162         prompt("Trace Processing")
       
 23163     }
       
 23164     field(BKPT, DBF_NOACCESS) {
       
 23165         extra("char                bkpt")
       
 23166         prompt("Break Point")
       
 23167         special(SPC_NOMOD)
       
 23168         interest(1)
       
 23169     }
       
 23170     field(UDF, DBF_UCHAR) {
       
 23171         prompt("Undefined")
       
 23172         initial("1")
       
 23173         pp(TRUE)
       
 23174         promptgroup("10 - Common")
       
 23175         interest(1)
       
 23176     }
       
 23177     field(UDFS, DBF_MENU) {
       
 23178         initial("INVALID")
       
 23179         prompt("Undefined Alarm Sevrty")
       
 23180         menu(menuAlarmSevr)
       
 23181         interest(1)
       
 23182         promptgroup("70 - Alarm")
       
 23183     }
       
 23184     field(TIME, DBF_NOACCESS) {
       
 23185         prompt("Time")
       
 23186         extra("epicsTimeStamp      time")
       
 23187         special(SPC_NOMOD)
       
 23188         interest(2)
       
 23189     }
       
 23190     field(FLNK, DBF_FWDLINK) {
       
 23191         promptgroup("20 - Scan")
       
 23192         interest(1)
       
 23193         prompt("Forward Process Link")
       
 23194     }
       
 23195     field(VERS, DBF_FLOAT) {
       
 23196         initial("1")
       
 23197         prompt("Code Version")
       
 23198         special(SPC_NOMOD)
       
 23199     }
       
 23200     field(HOPR, DBF_FLOAT) {
       
 23201         asl(ASL0)
       
 23202         prompt("High Operating Range")
       
 23203         interest(1)
       
 23204         promptgroup("70 - Alarm")
       
 23205     }
       
 23206     field(LOPR, DBF_FLOAT) {
       
 23207         promptgroup("41 - Bits (1)")
       
 23208         interest(1)
       
 23209         prompt("Low Operating Range")
       
 23210         asl(ASL0)
       
 23211     }
       
 23212     field(INIT, DBF_SHORT) {
       
 23213         prompt("Initialized?")
       
 23214         special(SPC_NOMOD)
       
 23215         interest(3)
       
 23216     }
       
 23217     field(CBST, DBF_NOACCESS) {
       
 23218         size(4)
       
 23219         extra("void *         cbst")
       
 23220         prompt("Pointer to cbStruct")
       
 23221         interest(4)
       
 23222         special(SPC_NOMOD)
       
 23223     }
       
 23224     field(INAN, DBF_STRING) {
       
 23225         prompt("INPA PV Name")
       
 23226         asl(ASL0)
       
 23227         size(40)
       
 23228         promptgroup("30 - Action")
       
 23229         interest(1)
       
 23230         special(SPC_MOD)
       
 23231     }
       
 23232     field(INBN, DBF_STRING) {
       
 23233         interest(1)
       
 23234         special(SPC_MOD)
       
 23235         promptgroup("30 - Action")
       
 23236         asl(ASL0)
       
 23237         size(40)
       
 23238         prompt("INPB PV Name")
       
 23239     }
       
 23240     field(INCN, DBF_STRING) {
       
 23241         prompt("INPC PV Name")
       
 23242         asl(ASL0)
       
 23243         size(40)
       
 23244         promptgroup("30 - Action")
       
 23245         interest(1)
       
 23246         special(SPC_MOD)
       
 23247     }
       
 23248     field(INDN, DBF_STRING) {
       
 23249         promptgroup("30 - Action")
       
 23250         interest(1)
       
 23251         special(SPC_MOD)
       
 23252         prompt("INPD PV Name")
       
 23253         asl(ASL0)
       
 23254         size(40)
       
 23255     }
       
 23256     field(INEN, DBF_STRING) {
       
 23257         prompt("INPE PV Name")
       
 23258         asl(ASL0)
       
 23259         size(40)
       
 23260         promptgroup("30 - Action")
       
 23261         interest(1)
       
 23262         special(SPC_MOD)
       
 23263     }
       
 23264     field(INFN, DBF_STRING) {
       
 23265         special(SPC_MOD)
       
 23266         interest(1)
       
 23267         promptgroup("30 - Action")
       
 23268         size(40)
       
 23269         asl(ASL0)
       
 23270         prompt("INPF PV Name")
       
 23271     }
       
 23272     field(INGN, DBF_STRING) {
       
 23273         promptgroup("30 - Action")
       
 23274         special(SPC_MOD)
       
 23275         interest(1)
       
 23276         prompt("INPG PV Name")
       
 23277         size(40)
       
 23278         asl(ASL0)
       
 23279     }
       
 23280     field(INHN, DBF_STRING) {
       
 23281         interest(1)
       
 23282         special(SPC_MOD)
       
 23283         promptgroup("30 - Action")
       
 23284         asl(ASL0)
       
 23285         size(40)
       
 23286         prompt("INPH PV Name")
       
 23287     }
       
 23288     field(ININ, DBF_STRING) {
       
 23289         promptgroup("30 - Action")
       
 23290         special(SPC_MOD)
       
 23291         interest(1)
       
 23292         prompt("INPI PV Name")
       
 23293         size(40)
       
 23294         asl(ASL0)
       
 23295     }
       
 23296     field(INJN, DBF_STRING) {
       
 23297         prompt("INPJ PV Name")
       
 23298         asl(ASL0)
       
 23299         size(40)
       
 23300         promptgroup("30 - Action")
       
 23301         interest(1)
       
 23302         special(SPC_MOD)
       
 23303     }
       
 23304     field(INKN, DBF_STRING) {
       
 23305         promptgroup("30 - Action")
       
 23306         interest(1)
       
 23307         special(SPC_MOD)
       
 23308         prompt("INPK PV Name")
       
 23309         asl(ASL0)
       
 23310         size(40)
       
 23311     }
       
 23312     field(INLN, DBF_STRING) {
       
 23313         special(SPC_MOD)
       
 23314         interest(1)
       
 23315         promptgroup("30 - Action")
       
 23316         size(40)
       
 23317         asl(ASL0)
       
 23318         prompt("INPL PV Name")
       
 23319     }
       
 23320     field(DOLN, DBF_STRING) {
       
 23321         promptgroup("30 - Action")
       
 23322         special(SPC_MOD)
       
 23323         interest(1)
       
 23324         prompt("DOL  PV Name")
       
 23325         size(40)
       
 23326         asl(ASL0)
       
 23327     }
       
 23328     field(OUTN, DBF_STRING) {
       
 23329         special(SPC_MOD)
       
 23330         interest(1)
       
 23331         promptgroup("30 - Action")
       
 23332         size(40)
       
 23333         asl(ASL0)
       
 23334         prompt("OUT  PV Name")
       
 23335     }
       
 23336     field(INAV, DBF_MENU) {
       
 23337         interest(1)
       
 23338         menu(swaitINAV)
       
 23339         special(SPC_NOMOD)
       
 23340         prompt("INPA PV Status")
       
 23341     }
       
 23342     field(INBV, DBF_MENU) {
       
 23343         prompt("INPB PV Status")
       
 23344         special(SPC_NOMOD)
       
 23345         menu(swaitINAV)
       
 23346         interest(1)
       
 23347     }
       
 23348     field(INCV, DBF_MENU) {
       
 23349         special(SPC_NOMOD)
       
 23350         interest(1)
       
 23351         menu(swaitINAV)
       
 23352         prompt("INPC PV Status")
       
 23353     }
       
 23354     field(INDV, DBF_MENU) {
       
 23355         prompt("INPD PV Status")
       
 23356         special(SPC_NOMOD)
       
 23357         interest(1)
       
 23358         menu(swaitINAV)
       
 23359     }
       
 23360     field(INEV, DBF_MENU) {
       
 23361         prompt("INPE PV Status")
       
 23362         special(SPC_NOMOD)
       
 23363         menu(swaitINAV)
       
 23364         interest(1)
       
 23365     }
       
 23366     field(INFV, DBF_MENU) {
       
 23367         prompt("INPF PV Status")
       
 23368         interest(1)
       
 23369         menu(swaitINAV)
       
 23370         special(SPC_NOMOD)
       
 23371     }
       
 23372     field(INGV, DBF_MENU) {
       
 23373         interest(1)
       
 23374         menu(swaitINAV)
       
 23375         special(SPC_NOMOD)
       
 23376         prompt("INPG PV Status")
       
 23377     }
       
 23378     field(INHV, DBF_MENU) {
       
 23379         prompt("INPH PV Status")
       
 23380         interest(1)
       
 23381         menu(swaitINAV)
       
 23382         special(SPC_NOMOD)
       
 23383     }
       
 23384     field(INIV, DBF_MENU) {
       
 23385         special(SPC_NOMOD)
       
 23386         menu(swaitINAV)
       
 23387         interest(1)
       
 23388         prompt("INPI PV Status")
       
 23389     }
       
 23390     field(INJV, DBF_MENU) {
       
 23391         menu(swaitINAV)
       
 23392         interest(1)
       
 23393         special(SPC_NOMOD)
       
 23394         prompt("INPJ PV Status")
       
 23395     }
       
 23396     field(INKV, DBF_MENU) {
       
 23397         special(SPC_NOMOD)
       
 23398         menu(swaitINAV)
       
 23399         interest(1)
       
 23400         prompt("INPK PV Status")
       
 23401     }
       
 23402     field(INLV, DBF_MENU) {
       
 23403         special(SPC_NOMOD)
       
 23404         interest(1)
       
 23405         menu(swaitINAV)
       
 23406         prompt("INPL PV Status")
       
 23407     }
       
 23408     field(DOLV, DBF_MENU) {
       
 23409         menu(swaitINAV)
       
 23410         interest(1)
       
 23411         special(SPC_NOMOD)
       
 23412         prompt("DOL  PV Status")
       
 23413     }
       
 23414     field(OUTV, DBF_MENU) {
       
 23415         interest(1)
       
 23416         menu(swaitINAV)
       
 23417         special(SPC_NOMOD)
       
 23418         prompt("OUT  PV Status")
       
 23419     }
       
 23420     field(A, DBF_DOUBLE) {
       
 23421         pp(TRUE)
       
 23422         prompt("Value of Input A")
       
 23423     }
       
 23424     field(B, DBF_DOUBLE) {
       
 23425         pp(TRUE)
       
 23426         prompt("Value of Input B")
       
 23427     }
       
 23428     field(C, DBF_DOUBLE) {
       
 23429         prompt("Value of Input C")
       
 23430         pp(TRUE)
       
 23431     }
       
 23432     field(D, DBF_DOUBLE) {
       
 23433         pp(TRUE)
       
 23434         prompt("Value of Input D")
       
 23435     }
       
 23436     field(E, DBF_DOUBLE) {
       
 23437         prompt("Value of Input E")
       
 23438         pp(TRUE)
       
 23439     }
       
 23440     field(F, DBF_DOUBLE) {
       
 23441         pp(TRUE)
       
 23442         prompt("Value of Input F")
       
 23443     }
       
 23444     field(G, DBF_DOUBLE) {
       
 23445         pp(TRUE)
       
 23446         prompt("Value of Input G")
       
 23447     }
       
 23448     field(H, DBF_DOUBLE) {
       
 23449         pp(TRUE)
       
 23450         prompt("Value of Input H")
       
 23451     }
       
 23452     field(I, DBF_DOUBLE) {
       
 23453         prompt("Value of Input I")
       
 23454         pp(TRUE)
       
 23455     }
       
 23456     field(J, DBF_DOUBLE) {
       
 23457         pp(TRUE)
       
 23458         prompt("Value of Input J")
       
 23459     }
       
 23460     field(K, DBF_DOUBLE) {
       
 23461         pp(TRUE)
       
 23462         prompt("Value of Input K")
       
 23463     }
       
 23464     field(L, DBF_DOUBLE) {
       
 23465         prompt("Value of Input L")
       
 23466         pp(TRUE)
       
 23467     }
       
 23468     field(LA, DBF_DOUBLE) {
       
 23469         prompt("Last Val of Input A")
       
 23470     }
       
 23471     field(LB, DBF_DOUBLE) {
       
 23472         prompt("Last Val of Input B")
       
 23473     }
       
 23474     field(LC, DBF_DOUBLE) {
       
 23475         prompt("Last Val of Input C")
       
 23476     }
       
 23477     field(LD, DBF_DOUBLE) {
       
 23478         prompt("Last Val of Input D")
       
 23479     }
       
 23480     field(LE, DBF_DOUBLE) {
       
 23481         prompt("Last Val of Input E")
       
 23482     }
       
 23483     field(LF, DBF_DOUBLE) {
       
 23484         prompt("Last Val of Input F")
       
 23485     }
       
 23486     field(LG, DBF_DOUBLE) {
       
 23487         prompt("Last Val of Input G")
       
 23488     }
       
 23489     field(LH, DBF_DOUBLE) {
       
 23490         prompt("Last Val of Input H")
       
 23491     }
       
 23492     field(LI, DBF_DOUBLE) {
       
 23493         prompt("Last Val of Input I")
       
 23494     }
       
 23495     field(LJ, DBF_DOUBLE) {
       
 23496         prompt("Last Val of Input J")
       
 23497     }
       
 23498     field(LK, DBF_DOUBLE) {
       
 23499         prompt("Last Val of Input K")
       
 23500     }
       
 23501     field(LL, DBF_DOUBLE) {
       
 23502         prompt("Last Val of Input L")
       
 23503     }
       
 23504     field(INAP, DBF_MENU) {
       
 23505         promptgroup("30 - Action")
       
 23506         interest(1)
       
 23507         menu(swaitINAP)
       
 23508         prompt("INPA causes I/O INTR")
       
 23509         initial("Yes")
       
 23510     }
       
 23511     field(INBP, DBF_MENU) {
       
 23512         prompt("INPB causes I/O INTR")
       
 23513         initial("Yes")
       
 23514         promptgroup("30 - Action")
       
 23515         interest(1)
       
 23516         menu(swaitINAP)
       
 23517     }
       
 23518     field(INCP, DBF_MENU) {
       
 23519         promptgroup("30 - Action")
       
 23520         interest(1)
       
 23521         menu(swaitINAP)
       
 23522         prompt("INPC causes I/O INTR")
       
 23523         initial("Yes")
       
 23524     }
       
 23525     field(INDP, DBF_MENU) {
       
 23526         promptgroup("30 - Action")
       
 23527         interest(1)
       
 23528         menu(swaitINAP)
       
 23529         prompt("INPD causes I/O INTR")
       
 23530         initial("Yes")
       
 23531     }
       
 23532     field(INEP, DBF_MENU) {
       
 23533         initial("Yes")
       
 23534         prompt("INPE causes I/O INTR")
       
 23535         menu(swaitINAP)
       
 23536         interest(1)
       
 23537         promptgroup("30 - Action")
       
 23538     }
       
 23539     field(INFP, DBF_MENU) {
       
 23540         promptgroup("30 - Action")
       
 23541         interest(1)
       
 23542         menu(swaitINAP)
       
 23543         prompt("INPF causes I/O INTR")
       
 23544         initial("Yes")
       
 23545     }
       
 23546     field(INGP, DBF_MENU) {
       
 23547         promptgroup("30 - Action")
       
 23548         menu(swaitINAP)
       
 23549         interest(1)
       
 23550         prompt("INPG causes I/O INTR")
       
 23551         initial("Yes")
       
 23552     }
       
 23553     field(INHP, DBF_MENU) {
       
 23554         menu(swaitINAP)
       
 23555         interest(1)
       
 23556         promptgroup("30 - Action")
       
 23557         initial("Yes")
       
 23558         prompt("INPH causes I/O INTR")
       
 23559     }
       
 23560     field(INIP, DBF_MENU) {
       
 23561         initial("Yes")
       
 23562         prompt("INPI causes I/O INTR")
       
 23563         menu(swaitINAP)
       
 23564         interest(1)
       
 23565         promptgroup("30 - Action")
       
 23566     }
       
 23567     field(INJP, DBF_MENU) {
       
 23568         interest(1)
       
 23569         menu(swaitINAP)
       
 23570         promptgroup("30 - Action")
       
 23571         initial("Yes")
       
 23572         prompt("INPJ causes I/O INTR")
       
 23573     }
       
 23574     field(INKP, DBF_MENU) {
       
 23575         promptgroup("30 - Action")
       
 23576         interest(1)
       
 23577         menu(swaitINAP)
       
 23578         prompt("INPK causes I/O INTR")
       
 23579         initial("Yes")
       
 23580     }
       
 23581     field(INLP, DBF_MENU) {
       
 23582         promptgroup("30 - Action")
       
 23583         menu(swaitINAP)
       
 23584         interest(1)
       
 23585         prompt("INPL causes I/O INTR")
       
 23586         initial("Yes")
       
 23587     }
       
 23588     field(CALC, DBF_STRING) {
       
 23589         prompt("Calculation")
       
 23590         initial("0")
       
 23591         asl(ASL0)
       
 23592         size(36)
       
 23593         promptgroup("30 - Action")
       
 23594         special(SPC_CALC)
       
 23595     }
       
 23596     field(RPCL, DBF_NOACCESS) {
       
 23597         interest(4)
       
 23598         special(SPC_NOMOD)
       
 23599         size(184)
       
 23600         extra("char    rpcl[184]")
       
 23601         prompt("Reverse Polish Calc")
       
 23602     }
       
 23603     field(CLCV, DBF_LONG) {
       
 23604         interest(1)
       
 23605         prompt("CALC Valid")
       
 23606     }
       
 23607     field(VAL, DBF_DOUBLE) {
       
 23608         prompt("Value Field")
       
 23609     }
       
 23610     field(OVAL, DBF_DOUBLE) {
       
 23611         prompt("Old Value")
       
 23612     }
       
 23613     field(PREC, DBF_SHORT) {
       
 23614         prompt("Display Precision")
       
 23615         promptgroup("10 - Common")
       
 23616         interest(1)
       
 23617     }
       
 23618     field(OOPT, DBF_MENU) {
       
 23619         prompt("Output Execute Opt")
       
 23620         interest(1)
       
 23621         menu(swaitOOPT)
       
 23622         promptgroup("30 - Action")
       
 23623     }
       
 23624     field(ODLY, DBF_FLOAT) {
       
 23625         asl(ASL0)
       
 23626         prompt("Output Execute Delay")
       
 23627         interest(1)
       
 23628         promptgroup("70 - Alarm")
       
 23629     }
       
 23630     field(DOPT, DBF_MENU) {
       
 23631         interest(1)
       
 23632         menu(swaitDOPT)
       
 23633         promptgroup("30 - Action")
       
 23634         prompt("Output Data Option")
       
 23635     }
       
 23636     field(DOLD, DBF_DOUBLE) {
       
 23637         asl(ASL0)
       
 23638         prompt("Desired Output Data")
       
 23639         interest(1)
       
 23640         promptgroup("30 - Action")
       
 23641     }
       
 23642     field(OEVT, DBF_USHORT) {
       
 23643         prompt("Event To Issue")
       
 23644         asl(ASL0)
       
 23645         promptgroup("30 - Action")
       
 23646     }
       
 23647     field(ADEL, DBF_DOUBLE) {
       
 23648         prompt("Archive Deadband")
       
 23649         interest(1)
       
 23650         promptgroup("30 - Action")
       
 23651     }
       
 23652     field(MDEL, DBF_DOUBLE) {
       
 23653         promptgroup("30 - Action")
       
 23654         interest(1)
       
 23655         prompt("Monitor Deadband")
       
 23656     }
       
 23657     field(ALST, DBF_DOUBLE) {
       
 23658         interest(3)
       
 23659         special(SPC_NOMOD)
       
 23660         prompt("Last Value Archived")
       
 23661     }
       
 23662     field(MLST, DBF_DOUBLE) {
       
 23663         prompt("Last Val Monitored")
       
 23664         special(SPC_NOMOD)
       
 23665         interest(3)
       
 23666     }
       
 23667     field(SIOL, DBF_INLINK) {
       
 23668         promptgroup("30 - Action")
       
 23669         interest(1)
       
 23670         prompt("Sim Input Specifctn")
       
 23671     }
       
 23672     field(SVAL, DBF_DOUBLE) {
       
 23673         prompt("Simulation Value")
       
 23674     }
       
 23675     field(SIML, DBF_INLINK) {
       
 23676         promptgroup("30 - Action")
       
 23677         interest(1)
       
 23678         prompt("Sim Mode Location")
       
 23679     }
       
 23680     field(SIMM, DBF_MENU) {
       
 23681         menu(menuYesNo)
       
 23682         interest(1)
       
 23683         prompt("Simulation Mode")
       
 23684     }
       
 23685     field(SIMS, DBF_MENU) {
       
 23686         promptgroup("40 - Input")
       
 23687         menu(menuAlarmSevr)
       
 23688         interest(2)
       
 23689         prompt("Sim mode Alarm Svrty")
       
 23690     }
       
 23691 }
       
 23692 device(swait, CONSTANT, devSWaitIoEvent, "Soft Channel")
       
 23693 recordtype(calc) {
       
 23694     %#include "epicsTypes.h"
       
 23695     %#include "link.h"
       
 23696     %#include "epicsMutex.h"
       
 23697     %#include "ellLib.h"
       
 23698     %#include "epicsTime.h"
       
 23699     %#include "postfix.h"
       
 23700     field(NAME, DBF_STRING) {
       
 23701         prompt("Record Name")
       
 23702         size(61)
       
 23703         special(SPC_NOMOD)
       
 23704     }
       
 23705     field(DESC, DBF_STRING) {
       
 23706         promptgroup("10 - Common")
       
 23707         size(41)
       
 23708         prompt("Descriptor")
       
 23709     }
       
 23710     field(ASG, DBF_STRING) {
       
 23711         special(SPC_AS)
       
 23712         promptgroup("10 - Common")
       
 23713         size(29)
       
 23714         prompt("Access Security Group")
       
 23715     }
       
 23716     field(SCAN, DBF_MENU) {
       
 23717         prompt("Scan Mechanism")
       
 23718         interest(1)
       
 23719         menu(menuScan)
       
 23720         special(SPC_SCAN)
       
 23721         promptgroup("20 - Scan")
       
 23722     }
       
 23723     field(PINI, DBF_MENU) {
       
 23724         prompt("Process at iocInit")
       
 23725         promptgroup("20 - Scan")
       
 23726         menu(menuPini)
       
 23727         interest(1)
       
 23728     }
       
 23729     field(PHAS, DBF_SHORT) {
       
 23730         promptgroup("20 - Scan")
       
 23731         interest(1)
       
 23732         special(SPC_SCAN)
       
 23733         prompt("Scan Phase")
       
 23734     }
       
 23735     field(EVNT, DBF_STRING) {
       
 23736         interest(1)
       
 23737         special(SPC_SCAN)
       
 23738         promptgroup("20 - Scan")
       
 23739         size(40)
       
 23740         prompt("Event Name")
       
 23741     }
       
 23742     field(TSE, DBF_SHORT) {
       
 23743         prompt("Time Stamp Event")
 23292         promptgroup("20 - Scan")
 23744         promptgroup("20 - Scan")
 23293         interest(1)
 23745         interest(1)
 23294     }
 23746     }
 23295     field(TSEL, DBF_INLINK) {
 23747     field(TSEL, DBF_INLINK) {
 23296         prompt("Time Stamp Link")
 23748         prompt("Time Stamp Link")
 23297         promptgroup("20 - Scan")
 23749         interest(1)
 23298         interest(1)
 23750         promptgroup("20 - Scan")
 23299     }
 23751     }
 23300     field(DTYP, DBF_DEVICE) {
 23752     field(DTYP, DBF_DEVICE) {
       
 23753         promptgroup("10 - Common")
       
 23754         interest(1)
 23301         prompt("Device Type")
 23755         prompt("Device Type")
 23302         interest(1)
       
 23303         promptgroup("10 - Common")
       
 23304     }
 23756     }
 23305     field(DISV, DBF_SHORT) {
 23757     field(DISV, DBF_SHORT) {
 23306         initial("1")
 23758         initial("1")
 23307         promptgroup("20 - Scan")
       
 23308         prompt("Disable Value")
 23759         prompt("Disable Value")
       
 23760         promptgroup("20 - Scan")
 23309     }
 23761     }
 23310     field(DISA, DBF_SHORT) {
 23762     field(DISA, DBF_SHORT) {
 23311         prompt("Disable")
 23763         prompt("Disable")
 23312     }
 23764     }
 23313     field(SDIS, DBF_INLINK) {
 23765     field(SDIS, DBF_INLINK) {
       
 23766         promptgroup("20 - Scan")
       
 23767         interest(1)
 23314         prompt("Scanning Disable")
 23768         prompt("Scanning Disable")
 23315         interest(1)
       
 23316         promptgroup("20 - Scan")
       
 23317     }
 23769     }
 23318     field(MLOK, DBF_NOACCESS) {
 23770     field(MLOK, DBF_NOACCESS) {
       
 23771         interest(4)
       
 23772         special(SPC_NOMOD)
       
 23773         extra("epicsMutexId        mlok")
 23319         prompt("Monitor lock")
 23774         prompt("Monitor lock")
 23320         special(SPC_NOMOD)
       
 23321         interest(4)
       
 23322         extra("epicsMutexId        mlok")
       
 23323     }
 23775     }
 23324     field(MLIS, DBF_NOACCESS) {
 23776     field(MLIS, DBF_NOACCESS) {
       
 23777         special(SPC_NOMOD)
       
 23778         interest(4)
 23325         prompt("Monitor List")
 23779         prompt("Monitor List")
 23326         special(SPC_NOMOD)
       
 23327         interest(4)
       
 23328         extra("ELLLIST             mlis")
 23780         extra("ELLLIST             mlis")
 23329     }
 23781     }
 23330     field(BKLNK, DBF_NOACCESS) {
 23782     field(BKLNK, DBF_NOACCESS) {
 23331         interest(4)
 23783         extra("ELLLIST             bklnk")
 23332         special(SPC_NOMOD)
       
 23333         prompt("Backwards link tracking")
 23784         prompt("Backwards link tracking")
 23334         extra("ELLLIST             bklnk")
 23785         interest(4)
       
 23786         special(SPC_NOMOD)
 23335     }
 23787     }
 23336     field(DISP, DBF_UCHAR) {
 23788     field(DISP, DBF_UCHAR) {
 23337         prompt("Disable putField")
 23789         prompt("Disable putField")
 23338     }
 23790     }
 23339     field(PROC, DBF_UCHAR) {
 23791     field(PROC, DBF_UCHAR) {
       
 23792         pp(TRUE)
 23340         interest(3)
 23793         interest(3)
 23341         prompt("Force Processing")
 23794         prompt("Force Processing")
 23342         pp(TRUE)
       
 23343     }
 23795     }
 23344     field(STAT, DBF_MENU) {
 23796     field(STAT, DBF_MENU) {
 23345         initial("UDF")
 23797         initial("UDF")
 23346         special(SPC_NOMOD)
       
 23347         prompt("Alarm Status")
 23798         prompt("Alarm Status")
 23348         menu(menuAlarmStat)
 23799         menu(menuAlarmStat)
       
 23800         special(SPC_NOMOD)
 23349     }
 23801     }
 23350     field(SEVR, DBF_MENU) {
 23802     field(SEVR, DBF_MENU) {
       
 23803         special(SPC_NOMOD)
 23351         menu(menuAlarmSevr)
 23804         menu(menuAlarmSevr)
 23352         prompt("Alarm Severity")
 23805         prompt("Alarm Severity")
 23353         special(SPC_NOMOD)
       
 23354     }
 23806     }
 23355     field(NSTA, DBF_MENU) {
 23807     field(NSTA, DBF_MENU) {
 23356         special(SPC_NOMOD)
       
 23357         interest(2)
       
 23358         prompt("New Alarm Status")
 23808         prompt("New Alarm Status")
       
 23809         special(SPC_NOMOD)
       
 23810         interest(2)
 23359         menu(menuAlarmStat)
 23811         menu(menuAlarmStat)
 23360     }
 23812     }
 23361     field(NSEV, DBF_MENU) {
 23813     field(NSEV, DBF_MENU) {
       
 23814         special(SPC_NOMOD)
       
 23815         menu(menuAlarmSevr)
       
 23816         interest(2)
 23362         prompt("New Alarm Severity")
 23817         prompt("New Alarm Severity")
 23363         special(SPC_NOMOD)
       
 23364         interest(2)
       
 23365         menu(menuAlarmSevr)
       
 23366     }
 23818     }
 23367     field(ACKS, DBF_MENU) {
 23819     field(ACKS, DBF_MENU) {
 23368         menu(menuAlarmSevr)
 23820         special(SPC_NOMOD)
 23369         interest(2)
 23821         menu(menuAlarmSevr)
 23370         special(SPC_NOMOD)
 23822         interest(2)
 23371         prompt("Alarm Ack Severity")
 23823         prompt("Alarm Ack Severity")
 23372     }
 23824     }
 23373     field(ACKT, DBF_MENU) {
 23825     field(ACKT, DBF_MENU) {
       
 23826         prompt("Alarm Ack Transient")
 23374         initial("YES")
 23827         initial("YES")
       
 23828         promptgroup("70 - Alarm")
       
 23829         special(SPC_NOMOD)
       
 23830         interest(2)
 23375         menu(menuYesNo)
 23831         menu(menuYesNo)
 23376         interest(2)
       
 23377         special(SPC_NOMOD)
       
 23378         promptgroup("70 - Alarm")
       
 23379         prompt("Alarm Ack Transient")
       
 23380     }
 23832     }
 23381     field(DISS, DBF_MENU) {
 23833     field(DISS, DBF_MENU) {
 23382         menu(menuAlarmSevr)
       
 23383         prompt("Disable Alarm Sevrty")
 23834         prompt("Disable Alarm Sevrty")
 23384         promptgroup("70 - Alarm")
 23835         interest(1)
 23385         interest(1)
 23836         menu(menuAlarmSevr)
       
 23837         promptgroup("70 - Alarm")
 23386     }
 23838     }
 23387     field(LCNT, DBF_UCHAR) {
 23839     field(LCNT, DBF_UCHAR) {
       
 23840         special(SPC_NOMOD)
       
 23841         interest(2)
 23388         prompt("Lock Count")
 23842         prompt("Lock Count")
 23389         interest(2)
       
 23390         special(SPC_NOMOD)
       
 23391     }
 23843     }
 23392     field(PACT, DBF_UCHAR) {
 23844     field(PACT, DBF_UCHAR) {
 23393         special(SPC_NOMOD)
 23845         interest(1)
 23394         interest(1)
 23846         special(SPC_NOMOD)
 23395         prompt("Record active")
 23847         prompt("Record active")
 23396     }
 23848     }
 23397     field(PUTF, DBF_UCHAR) {
 23849     field(PUTF, DBF_UCHAR) {
       
 23850         special(SPC_NOMOD)
       
 23851         interest(1)
 23398         prompt("dbPutField process")
 23852         prompt("dbPutField process")
 23399         special(SPC_NOMOD)
       
 23400         interest(1)
       
 23401     }
 23853     }
 23402     field(RPRO, DBF_UCHAR) {
 23854     field(RPRO, DBF_UCHAR) {
 23403         interest(1)
 23855         interest(1)
 23404         special(SPC_NOMOD)
 23856         special(SPC_NOMOD)
 23405         prompt("Reprocess ")
 23857         prompt("Reprocess ")
 23406     }
 23858     }
 23407     field(ASP, DBF_NOACCESS) {
 23859     field(ASP, DBF_NOACCESS) {
 23408         interest(4)
 23860         special(SPC_NOMOD)
 23409         special(SPC_NOMOD)
 23861         interest(4)
       
 23862         extra("struct asgMember    *asp")
 23410         prompt("Access Security Pvt")
 23863         prompt("Access Security Pvt")
 23411         extra("struct asgMember    *asp")
       
 23412     }
 23864     }
 23413     field(PPN, DBF_NOACCESS) {
 23865     field(PPN, DBF_NOACCESS) {
       
 23866         special(SPC_NOMOD)
       
 23867         interest(4)
 23414         extra("struct processNotify *ppn")
 23868         extra("struct processNotify *ppn")
 23415         prompt("pprocessNotify")
 23869         prompt("pprocessNotify")
 23416         special(SPC_NOMOD)
       
 23417         interest(4)
       
 23418     }
 23870     }
 23419     field(PPNR, DBF_NOACCESS) {
 23871     field(PPNR, DBF_NOACCESS) {
 23420         extra("struct processNotifyRecord *ppnr")
 23872         extra("struct processNotifyRecord *ppnr")
 23421         prompt("pprocessNotifyRecord")
 23873         prompt("pprocessNotifyRecord")
 23422         special(SPC_NOMOD)
 23874         interest(4)
 23423         interest(4)
 23875         special(SPC_NOMOD)
 23424     }
 23876     }
 23425     field(SPVT, DBF_NOACCESS) {
 23877     field(SPVT, DBF_NOACCESS) {
       
 23878         interest(4)
       
 23879         special(SPC_NOMOD)
 23426         extra("struct scan_element *spvt")
 23880         extra("struct scan_element *spvt")
 23427         interest(4)
       
 23428         special(SPC_NOMOD)
       
 23429         prompt("Scan Private")
 23881         prompt("Scan Private")
 23430     }
 23882     }
 23431     field(RSET, DBF_NOACCESS) {
 23883     field(RSET, DBF_NOACCESS) {
 23432         extra("struct typed_rset   *rset")
 23884         extra("struct typed_rset   *rset")
 23433         special(SPC_NOMOD)
       
 23434         interest(4)
       
 23435         prompt("Address of RSET")
 23885         prompt("Address of RSET")
       
 23886         special(SPC_NOMOD)
       
 23887         interest(4)
 23436     }
 23888     }
 23437     field(DSET, DBF_NOACCESS) {
 23889     field(DSET, DBF_NOACCESS) {
       
 23890         special(SPC_NOMOD)
       
 23891         interest(4)
 23438         extra("struct dset         *dset")
 23892         extra("struct dset         *dset")
 23439         prompt("DSET address")
 23893         prompt("DSET address")
 23440         special(SPC_NOMOD)
       
 23441         interest(4)
       
 23442     }
 23894     }
 23443     field(DPVT, DBF_NOACCESS) {
 23895     field(DPVT, DBF_NOACCESS) {
 23444         prompt("Device Private")
 23896         prompt("Device Private")
 23445         special(SPC_NOMOD)
       
 23446         interest(4)
       
 23447         extra("void                *dpvt")
 23897         extra("void                *dpvt")
       
 23898         interest(4)
       
 23899         special(SPC_NOMOD)
 23448     }
 23900     }
 23449     field(RDES, DBF_NOACCESS) {
 23901     field(RDES, DBF_NOACCESS) {
       
 23902         special(SPC_NOMOD)
       
 23903         interest(4)
       
 23904         extra("struct dbRecordType *rdes")
 23450         prompt("Address of dbRecordType")
 23905         prompt("Address of dbRecordType")
 23451         special(SPC_NOMOD)
       
 23452         interest(4)
       
 23453         extra("struct dbRecordType *rdes")
       
 23454     }
 23906     }
 23455     field(LSET, DBF_NOACCESS) {
 23907     field(LSET, DBF_NOACCESS) {
       
 23908         prompt("Lock Set")
 23456         extra("struct lockRecord   *lset")
 23909         extra("struct lockRecord   *lset")
 23457         prompt("Lock Set")
       
 23458         interest(4)
 23910         interest(4)
 23459         special(SPC_NOMOD)
 23911         special(SPC_NOMOD)
 23460     }
 23912     }
 23461     field(PRIO, DBF_MENU) {
 23913     field(PRIO, DBF_MENU) {
       
 23914         promptgroup("20 - Scan")
       
 23915         interest(1)
 23462         menu(menuPriority)
 23916         menu(menuPriority)
 23463         special(SPC_SCAN)
 23917         special(SPC_SCAN)
 23464         interest(1)
       
 23465         promptgroup("20 - Scan")
       
 23466         prompt("Scheduling Priority")
 23918         prompt("Scheduling Priority")
 23467     }
 23919     }
 23468     field(TPRO, DBF_UCHAR) {
 23920     field(TPRO, DBF_UCHAR) {
 23469         prompt("Trace Processing")
 23921         prompt("Trace Processing")
 23470     }
 23922     }
 23471     field(BKPT, DBF_NOACCESS) {
 23923     field(BKPT, DBF_NOACCESS) {
 23472         interest(1)
 23924         extra("char                bkpt")
 23473         special(SPC_NOMOD)
       
 23474         prompt("Break Point")
 23925         prompt("Break Point")
 23475         extra("char                bkpt")
 23926         interest(1)
       
 23927         special(SPC_NOMOD)
 23476     }
 23928     }
 23477     field(UDF, DBF_UCHAR) {
 23929     field(UDF, DBF_UCHAR) {
       
 23930         interest(1)
       
 23931         pp(TRUE)
       
 23932         promptgroup("10 - Common")
       
 23933         initial("1")
 23478         prompt("Undefined")
 23934         prompt("Undefined")
 23479         promptgroup("10 - Common")
       
 23480         interest(1)
       
 23481         initial("1")
       
 23482         pp(TRUE)
       
 23483     }
 23935     }
 23484     field(UDFS, DBF_MENU) {
 23936     field(UDFS, DBF_MENU) {
 23485         promptgroup("70 - Alarm")
       
 23486         interest(1)
       
 23487         prompt("Undefined Alarm Sevrty")
 23937         prompt("Undefined Alarm Sevrty")
 23488         menu(menuAlarmSevr)
       
 23489         initial("INVALID")
 23938         initial("INVALID")
       
 23939         promptgroup("70 - Alarm")
       
 23940         menu(menuAlarmSevr)
       
 23941         interest(1)
 23490     }
 23942     }
 23491     field(TIME, DBF_NOACCESS) {
 23943     field(TIME, DBF_NOACCESS) {
 23492         extra("epicsTimeStamp      time")
 23944         extra("epicsTimeStamp      time")
 23493         prompt("Time")
 23945         prompt("Time")
 23494         interest(2)
 23946         interest(2)
 23495         special(SPC_NOMOD)
 23947         special(SPC_NOMOD)
 23496     }
 23948     }
 23497     field(FLNK, DBF_FWDLINK) {
 23949     field(FLNK, DBF_FWDLINK) {
 23498         promptgroup("20 - Scan")
       
 23499         interest(1)
       
 23500         prompt("Forward Process Link")
 23950         prompt("Forward Process Link")
 23501     }
 23951         interest(1)
 23502     field(VAL, DBF_LONG) {
 23952         promptgroup("20 - Scan")
       
 23953     }
       
 23954     field(VAL, DBF_DOUBLE) {
       
 23955         promptgroup("50 - Output")
 23503         asl(ASL0)
 23956         asl(ASL0)
 23504         promptgroup("50 - Output")
 23957         prompt("Result")
 23505         prompt("Word")
 23958     }
 23506         pp(TRUE)
 23959     field(CALC, DBF_STRING) {
 23507     }
 23960         prompt("Calculation")
 23508     field(OMSL, DBF_MENU) {
 23961         size(80)
 23509         pp(TRUE)
 23962         initial("0")
 23510         prompt("Output Mode Select")
 23963         pp(TRUE)
 23511         special(SPC_RESET)
 23964         promptgroup("30 - Action")
 23512         interest(1)
 23965         special(SPC_CALC)
 23513         promptgroup("50 - Output")
 23966     }
 23514         menu(menuOmsl)
 23967     field(INPA, DBF_INLINK) {
 23515     }
 23968         interest(1)
 23516     field(NOBT, DBF_SHORT) {
 23969         promptgroup("41 - Input A-F")
 23517         interest(1)
 23970         prompt("Input A")
 23518         promptgroup("50 - Output")
 23971     }
 23519         special(SPC_NOMOD)
 23972     field(INPB, DBF_INLINK) {
 23520         prompt("Number of Bits")
 23973         prompt("Input B")
 23521     }
 23974         promptgroup("41 - Input A-F")
 23522     field(DOL, DBF_INLINK) {
 23975         interest(1)
 23523         interest(1)
 23976     }
 23524         promptgroup("40 - Input")
 23977     field(INPC, DBF_INLINK) {
 23525         prompt("Desired Output Loc")
 23978         prompt("Input C")
 23526     }
 23979         promptgroup("41 - Input A-F")
 23527     field(OUT, DBF_OUTLINK) {
 23980         interest(1)
 23528         promptgroup("50 - Output")
 23981     }
 23529         interest(1)
 23982     field(INPD, DBF_INLINK) {
 23530         prompt("Output Specification")
 23983         prompt("Input D")
 23531     }
 23984         promptgroup("41 - Input A-F")
 23532     field(RVAL, DBF_ULONG) {
 23985         interest(1)
 23533         pp(TRUE)
 23986     }
 23534         special(SPC_NOMOD)
 23987     field(INPE, DBF_INLINK) {
 23535         prompt("Raw Value")
 23988         prompt("Input E")
 23536     }
 23989         interest(1)
 23537     field(ORAW, DBF_ULONG) {
 23990         promptgroup("41 - Input A-F")
 23538         prompt("Prev Raw Value")
 23991     }
 23539         interest(3)
 23992     field(INPF, DBF_INLINK) {
 23540         special(SPC_NOMOD)
 23993         prompt("Input F")
 23541     }
 23994         interest(1)
 23542     field(RBV, DBF_ULONG) {
 23995         promptgroup("41 - Input A-F")
 23543         special(SPC_NOMOD)
 23996     }
 23544         prompt("Readback Value")
 23997     field(INPG, DBF_INLINK) {
 23545     }
 23998         prompt("Input G")
 23546     field(ORBV, DBF_ULONG) {
 23999         promptgroup("42 - Input G-L")
 23547         interest(3)
 24000         interest(1)
 23548         special(SPC_NOMOD)
 24001     }
 23549         prompt("Prev Readback Value")
 24002     field(INPH, DBF_INLINK) {
 23550     }
 24003         prompt("Input H")
 23551     field(MASK, DBF_ULONG) {
 24004         promptgroup("42 - Input G-L")
 23552         prompt("Hardware Mask")
 24005         interest(1)
 23553         interest(1)
 24006     }
 23554         special(SPC_NOMOD)
 24007     field(INPI, DBF_INLINK) {
 23555     }
 24008         interest(1)
 23556     field(MLST, DBF_LONG) {
 24009         promptgroup("42 - Input G-L")
 23557         special(SPC_NOMOD)
 24010         prompt("Input I")
 23558         interest(3)
 24011     }
 23559         prompt("Last Value Monitored")
 24012     field(INPJ, DBF_INLINK) {
 23560     }
 24013         prompt("Input J")
 23561     field(SHFT, DBF_USHORT) {
 24014         promptgroup("42 - Input G-L")
 23562         prompt("Shift")
 24015         interest(1)
 23563         promptgroup("50 - Output")
 24016     }
 23564         interest(1)
 24017     field(INPK, DBF_INLINK) {
 23565     }
 24018         interest(1)
 23566     field(SIOL, DBF_OUTLINK) {
 24019         promptgroup("42 - Input G-L")
 23567         prompt("Simulation Output Link")
 24020         prompt("Input K")
 23568         promptgroup("90 - Simulate")
 24021     }
 23569         interest(1)
 24022     field(INPL, DBF_INLINK) {
 23570     }
 24023         promptgroup("42 - Input G-L")
 23571     field(SIML, DBF_INLINK) {
 24024         interest(1)
 23572         prompt("Simulation Mode Link")
 24025         prompt("Input L")
 23573         promptgroup("90 - Simulate")
 24026     }
 23574         interest(1)
 24027     field(EGU, DBF_STRING) {
 23575     }
 24028         promptgroup("80 - Display")
 23576     field(SIMM, DBF_MENU) {
 24029         prop(YES)
 23577         menu(menuYesNo)
 24030         interest(1)
 23578         interest(1)
 24031         prompt("Engineering Units")
 23579         special(SPC_MOD)
 24032         size(16)
 23580         prompt("Simulation Mode")
 24033     }
 23581     }
 24034     field(PREC, DBF_SHORT) {
 23582     field(SIMS, DBF_MENU) {
 24035         prompt("Display Precision")
 23583         prompt("Simulation Mode Severity")
 24036         interest(1)
 23584         interest(2)
 24037         prop(YES)
 23585         promptgroup("90 - Simulate")
 24038         promptgroup("80 - Display")
 23586         menu(menuAlarmSevr)
 24039     }
 23587     }
 24040     field(HOPR, DBF_DOUBLE) {
 23588     field(OLDSIMM, DBF_MENU) {
 24041         prompt("High Operating Rng")
 23589         interest(4)
 24042         interest(1)
 23590         special(SPC_NOMOD)
 24043         prop(YES)
 23591         prompt("Prev. Simulation Mode")
 24044         promptgroup("80 - Display")
 23592         menu(menuSimm)
 24045     }
 23593     }
 24046     field(LOPR, DBF_DOUBLE) {
 23594     field(SSCN, DBF_MENU) {
 24047         interest(1)
 23595         initial("65535")
 24048         prop(YES)
 23596         menu(menuScan)
 24049         promptgroup("80 - Display")
 23597         prompt("Sim. Mode Scan")
 24050         prompt("Low Operating Range")
 23598         promptgroup("90 - Simulate")
 24051     }
 23599         interest(1)
 24052     field(HIHI, DBF_DOUBLE) {
 23600     }
 24053         prompt("Hihi Alarm Limit")
 23601     field(SDLY, DBF_DOUBLE) {
 24054         interest(1)
 23602         promptgroup("90 - Simulate")
 24055         prop(YES)
 23603         interest(2)
 24056         promptgroup("70 - Alarm")
 23604         prompt("Sim. Mode Async Delay")
 24057         pp(TRUE)
 23605         initial("-1.0")
 24058     }
 23606     }
 24059     field(LOLO, DBF_DOUBLE) {
 23607     field(SIMPVT, DBF_NOACCESS) {
 24060         prop(YES)
 23608         extra("CALLBACK            *simpvt")
 24061         interest(1)
 23609         special(SPC_NOMOD)
 24062         pp(TRUE)
 23610         interest(4)
 24063         promptgroup("70 - Alarm")
 23611         prompt("Sim. Mode Private")
 24064         prompt("Lolo Alarm Limit")
 23612     }
 24065     }
 23613     field(IVOA, DBF_MENU) {
 24066     field(HIGH, DBF_DOUBLE) {
 23614         prompt("INVALID outpt action")
 24067         promptgroup("70 - Alarm")
 23615         interest(2)
 24068         pp(TRUE)
 23616         promptgroup("50 - Output")
 24069         interest(1)
 23617         menu(menuIvoa)
 24070         prop(YES)
 23618     }
 24071         prompt("High Alarm Limit")
 23619     field(IVOV, DBF_LONG) {
 24072     }
 23620         prompt("INVALID output value")
 24073     field(LOW, DBF_DOUBLE) {
 23621         promptgroup("50 - Output")
 24074         prompt("Low Alarm Limit")
 23622         interest(2)
 24075         prop(YES)
 23623     }
 24076         interest(1)
 23624     field(B0, DBF_UCHAR) {
 24077         promptgroup("70 - Alarm")
 23625         pp(TRUE)
 24078         pp(TRUE)
 23626         promptgroup("51 - Output 0-7")
 24079     }
 23627         interest(1)
 24080     field(HHSV, DBF_MENU) {
 23628         special(SPC_MOD)
 24081         prompt("Hihi Severity")
 23629         prompt("Bit 0")
 24082         prop(YES)
 23630     }
 24083         menu(menuAlarmSevr)
 23631     field(B1, DBF_UCHAR) {
 24084         interest(1)
 23632         prompt("Bit 1")
 24085         promptgroup("70 - Alarm")
 23633         special(SPC_MOD)
 24086         pp(TRUE)
 23634         interest(1)
 24087     }
 23635         promptgroup("51 - Output 0-7")
 24088     field(LLSV, DBF_MENU) {
 23636         pp(TRUE)
 24089         pp(TRUE)
 23637     }
 24090         promptgroup("70 - Alarm")
 23638     field(B2, DBF_UCHAR) {
 24091         prop(YES)
 23639         pp(TRUE)
 24092         menu(menuAlarmSevr)
 23640         prompt("Bit 2")
 24093         interest(1)
 23641         promptgroup("51 - Output 0-7")
 24094         prompt("Lolo Severity")
 23642         interest(1)
 24095     }
 23643         special(SPC_MOD)
 24096     field(HSV, DBF_MENU) {
 23644     }
 24097         prop(YES)
 23645     field(B3, DBF_UCHAR) {
 24098         menu(menuAlarmSevr)
 23646         pp(TRUE)
 24099         interest(1)
 23647         prompt("Bit 3")
 24100         pp(TRUE)
 23648         interest(1)
 24101         promptgroup("70 - Alarm")
 23649         promptgroup("51 - Output 0-7")
 24102         prompt("High Severity")
 23650         special(SPC_MOD)
 24103     }
 23651     }
 24104     field(LSV, DBF_MENU) {
 23652     field(B4, DBF_UCHAR) {
 24105         pp(TRUE)
 23653         prompt("Bit 4")
 24106         promptgroup("70 - Alarm")
 23654         interest(1)
 24107         interest(1)
 23655         special(SPC_MOD)
 24108         menu(menuAlarmSevr)
 23656         promptgroup("51 - Output 0-7")
 24109         prop(YES)
 23657         pp(TRUE)
 24110         prompt("Low Severity")
 23658     }
 24111     }
 23659     field(B5, DBF_UCHAR) {
 24112     field(AFTC, DBF_DOUBLE) {
 23660         prompt("Bit 5")
 24113         prompt("Alarm Filter Time Constant")
 23661         special(SPC_MOD)
 24114         interest(1)
 23662         interest(1)
 24115         promptgroup("70 - Alarm")
 23663         promptgroup("51 - Output 0-7")
 24116     }
 23664         pp(TRUE)
 24117     field(AFVL, DBF_DOUBLE) {
 23665     }
 24118         special(SPC_NOMOD)
 23666     field(B6, DBF_UCHAR) {
 24119         interest(3)
 23667         pp(TRUE)
 24120         prompt("Alarm Filter Value")
 23668         interest(1)
 24121     }
 23669         promptgroup("51 - Output 0-7")
 24122     field(HYST, DBF_DOUBLE) {
 23670         special(SPC_MOD)
 24123         prompt("Alarm Deadband")
 23671         prompt("Bit 6")
 24124         promptgroup("70 - Alarm")
 23672     }
 24125         interest(1)
 23673     field(B7, DBF_UCHAR) {
 24126     }
 23674         pp(TRUE)
 24127     field(ADEL, DBF_DOUBLE) {
 23675         prompt("Bit 7")
 24128         prompt("Archive Deadband")
 23676         promptgroup("51 - Output 0-7")
 24129         interest(1)
 23677         interest(1)
 24130         promptgroup("80 - Display")
 23678         special(SPC_MOD)
 24131     }
 23679     }
 24132     field(MDEL, DBF_DOUBLE) {
 23680     field(B8, DBF_UCHAR) {
 24133         interest(1)
 23681         pp(TRUE)
 24134         promptgroup("80 - Display")
 23682         prompt("Bit 8")
 24135         prompt("Monitor Deadband")
 23683         interest(1)
 24136     }
 23684         special(SPC_MOD)
 24137     field(A, DBF_DOUBLE) {
 23685         promptgroup("52 - Output 8-15")
 24138         prompt("Value of Input A")
 23686     }
 24139         pp(TRUE)
 23687     field(B9, DBF_UCHAR) {
 24140     }
 23688         interest(1)
 24141     field(B, DBF_DOUBLE) {
 23689         promptgroup("52 - Output 8-15")
 24142         pp(TRUE)
 23690         special(SPC_MOD)
 24143         prompt("Value of Input B")
 23691         prompt("Bit 9")
 24144     }
 23692         pp(TRUE)
 24145     field(C, DBF_DOUBLE) {
 23693     }
 24146         pp(TRUE)
 23694     field(BA, DBF_UCHAR) {
 24147         prompt("Value of Input C")
 23695         special(SPC_MOD)
 24148     }
 23696         interest(1)
 24149     field(D, DBF_DOUBLE) {
 23697         promptgroup("52 - Output 8-15")
 24150         prompt("Value of Input D")
 23698         prompt("Bit 10")
 24151         pp(TRUE)
 23699         pp(TRUE)
 24152     }
 23700     }
 24153     field(E, DBF_DOUBLE) {
 23701     field(BB, DBF_UCHAR) {
 24154         prompt("Value of Input E")
 23702         prompt("Bit 11")
 24155         pp(TRUE)
 23703         interest(1)
 24156     }
 23704         promptgroup("52 - Output 8-15")
 24157     field(F, DBF_DOUBLE) {
 23705         special(SPC_MOD)
 24158         prompt("Value of Input F")
 23706         pp(TRUE)
 24159         pp(TRUE)
 23707     }
 24160     }
 23708     field(BC, DBF_UCHAR) {
 24161     field(G, DBF_DOUBLE) {
 23709         pp(TRUE)
 24162         pp(TRUE)
 23710         special(SPC_MOD)
 24163         prompt("Value of Input G")
 23711         interest(1)
 24164     }
 23712         promptgroup("52 - Output 8-15")
 24165     field(H, DBF_DOUBLE) {
 23713         prompt("Bit 12")
 24166         pp(TRUE)
 23714     }
 24167         prompt("Value of Input H")
 23715     field(BD, DBF_UCHAR) {
 24168     }
 23716         interest(1)
 24169     field(I, DBF_DOUBLE) {
 23717         promptgroup("52 - Output 8-15")
 24170         pp(TRUE)
 23718         special(SPC_MOD)
 24171         prompt("Value of Input I")
 23719         prompt("Bit 13")
 24172     }
 23720         pp(TRUE)
 24173     field(J, DBF_DOUBLE) {
 23721     }
 24174         prompt("Value of Input J")
 23722     field(BE, DBF_UCHAR) {
 24175         pp(TRUE)
 23723         pp(TRUE)
 24176     }
 23724         prompt("Bit 14")
 24177     field(K, DBF_DOUBLE) {
 23725         promptgroup("52 - Output 8-15")
 24178         prompt("Value of Input K")
 23726         interest(1)
 24179         pp(TRUE)
 23727         special(SPC_MOD)
 24180     }
 23728     }
 24181     field(L, DBF_DOUBLE) {
 23729     field(BF, DBF_UCHAR) {
 24182         prompt("Value of Input L")
 23730         pp(TRUE)
 24183         pp(TRUE)
 23731         prompt("Bit 15")
 24184     }
 23732         interest(1)
 24185     field(LA, DBF_DOUBLE) {
 23733         promptgroup("52 - Output 8-15")
 24186         interest(3)
 23734         special(SPC_MOD)
 24187         special(SPC_NOMOD)
 23735     }
 24188         prompt("Prev Value of A")
 23736     field(B10, DBF_UCHAR) {
 24189     }
 23737         pp(TRUE)
 24190     field(LB, DBF_DOUBLE) {
 23738         prompt("Bit 16")
 24191         prompt("Prev Value of B")
 23739         special(SPC_MOD)
 24192         special(SPC_NOMOD)
 23740         interest(1)
 24193         interest(3)
 23741         promptgroup("53 - Output 16-23")
 24194     }
 23742     }
 24195     field(LC, DBF_DOUBLE) {
 23743     field(B11, DBF_UCHAR) {
 24196         prompt("Prev Value of C")
 23744         prompt("Bit 17")
 24197         special(SPC_NOMOD)
 23745         interest(1)
 24198         interest(3)
 23746         promptgroup("53 - Output 16-23")
 24199     }
 23747         special(SPC_MOD)
 24200     field(LD, DBF_DOUBLE) {
 23748         pp(TRUE)
 24201         special(SPC_NOMOD)
 23749     }
 24202         interest(3)
 23750     field(B12, DBF_UCHAR) {
 24203         prompt("Prev Value of D")
 23751         interest(1)
 24204     }
 23752         special(SPC_MOD)
 24205     field(LE, DBF_DOUBLE) {
 23753         promptgroup("53 - Output 16-23")
 24206         special(SPC_NOMOD)
 23754         prompt("Bit 18")
 24207         interest(3)
 23755         pp(TRUE)
 24208         prompt("Prev Value of E")
 23756     }
 24209     }
 23757     field(B13, DBF_UCHAR) {
 24210     field(LF, DBF_DOUBLE) {
 23758         interest(1)
 24211         special(SPC_NOMOD)
 23759         promptgroup("53 - Output 16-23")
 24212         interest(3)
 23760         special(SPC_MOD)
 24213         prompt("Prev Value of F")
 23761         prompt("Bit 19")
 24214     }
 23762         pp(TRUE)
 24215     field(LG, DBF_DOUBLE) {
 23763     }
 24216         prompt("Prev Value of G")
 23764     field(B14, DBF_UCHAR) {
 24217         interest(3)
 23765         pp(TRUE)
 24218         special(SPC_NOMOD)
 23766         prompt("Bit 20")
 24219     }
 23767         interest(1)
 24220     field(LH, DBF_DOUBLE) {
 23768         promptgroup("53 - Output 16-23")
 24221         prompt("Prev Value of H")
 23769         special(SPC_MOD)
 24222         special(SPC_NOMOD)
 23770     }
 24223         interest(3)
 23771     field(B15, DBF_UCHAR) {
 24224     }
 23772         promptgroup("53 - Output 16-23")
 24225     field(LI, DBF_DOUBLE) {
 23773         interest(1)
 24226         interest(3)
 23774         special(SPC_MOD)
 24227         special(SPC_NOMOD)
 23775         prompt("Bit 21")
 24228         prompt("Prev Value of I")
 23776         pp(TRUE)
 24229     }
 23777     }
 24230     field(LJ, DBF_DOUBLE) {
 23778     field(B16, DBF_UCHAR) {
 24231         interest(3)
 23779         prompt("Bit 22")
 24232         special(SPC_NOMOD)
 23780         special(SPC_MOD)
 24233         prompt("Prev Value of J")
 23781         interest(1)
 24234     }
 23782         promptgroup("53 - Output 16-23")
 24235     field(LK, DBF_DOUBLE) {
 23783         pp(TRUE)
 24236         prompt("Prev Value of K")
 23784     }
 24237         interest(3)
 23785     field(B17, DBF_UCHAR) {
 24238         special(SPC_NOMOD)
 23786         prompt("Bit 23")
 24239     }
 23787         interest(1)
 24240     field(LL, DBF_DOUBLE) {
 23788         promptgroup("53 - Output 16-23")
 24241         interest(3)
 23789         special(SPC_MOD)
 24242         special(SPC_NOMOD)
 23790         pp(TRUE)
 24243         prompt("Prev Value of L")
 23791     }
 24244     }
 23792     field(B18, DBF_UCHAR) {
 24245     field(LALM, DBF_DOUBLE) {
 23793         pp(TRUE)
 24246         prompt("Last Value Alarmed")
 23794         prompt("Bit 24")
 24247         interest(3)
 23795         interest(1)
 24248         special(SPC_NOMOD)
 23796         special(SPC_MOD)
 24249     }
 23797         promptgroup("54 - Output 24-31")
 24250     field(ALST, DBF_DOUBLE) {
 23798     }
 24251         interest(3)
 23799     field(B19, DBF_UCHAR) {
 24252         special(SPC_NOMOD)
 23800         interest(1)
 24253         prompt("Last Value Archived")
 23801         promptgroup("54 - Output 24-31")
 24254     }
 23802         special(SPC_MOD)
 24255     field(MLST, DBF_DOUBLE) {
 23803         prompt("Bit 25")
 24256         special(SPC_NOMOD)
 23804         pp(TRUE)
 24257         interest(3)
 23805     }
 24258         prompt("Last Val Monitored")
 23806     field(B1A, DBF_UCHAR) {
 24259     }
 23807         interest(1)
 24260     field(RPCL, DBF_NOACCESS) {
 23808         special(SPC_MOD)
 24261         interest(4)
 23809         promptgroup("54 - Output 24-31")
 24262         special(SPC_NOMOD)
 23810         prompt("Bit 26")
 24263         extra("char	rpcl[INFIX_TO_POSTFIX_SIZE(80)]")
 23811         pp(TRUE)
 24264         prompt("Reverse Polish Calc")
 23812     }
       
 23813     field(B1B, DBF_UCHAR) {
       
 23814         pp(TRUE)
       
 23815         prompt("Bit 27")
       
 23816         special(SPC_MOD)
       
 23817         interest(1)
       
 23818         promptgroup("54 - Output 24-31")
       
 23819     }
       
 23820     field(B1C, DBF_UCHAR) {
       
 23821         pp(TRUE)
       
 23822         prompt("Bit 28")
       
 23823         special(SPC_MOD)
       
 23824         interest(1)
       
 23825         promptgroup("54 - Output 24-31")
       
 23826     }
       
 23827     field(B1D, DBF_UCHAR) {
       
 23828         pp(TRUE)
       
 23829         prompt("Bit 29")
       
 23830         promptgroup("54 - Output 24-31")
       
 23831         interest(1)
       
 23832         special(SPC_MOD)
       
 23833     }
       
 23834     field(B1E, DBF_UCHAR) {
       
 23835         pp(TRUE)
       
 23836         interest(1)
       
 23837         promptgroup("54 - Output 24-31")
       
 23838         special(SPC_MOD)
       
 23839         prompt("Bit 30")
       
 23840     }
       
 23841     field(B1F, DBF_UCHAR) {
       
 23842         prompt("Bit 31")
       
 23843         interest(1)
       
 23844         promptgroup("54 - Output 24-31")
       
 23845         special(SPC_MOD)
       
 23846         pp(TRUE)
       
 23847     }
 24265     }
 23848 }
 24266 }
 23849 device(mbboDirect, CONSTANT, devMbboDirectSoft, "Soft Channel")
       
 23850 device(mbboDirect, CONSTANT, devMbboDirectSoftRaw, "Raw Soft Channel")
       
 23851 device(mbboDirect, CONSTANT, devMbboDirectSoftCallback, "Async Soft Channel")
       
 23852 device(mbboDirect, INST_IO, asynMbboDirectUInt32Digital, "asynUInt32Digital")
       
 23853 device(mbboDirect, INST_IO, devmbboDirectStream, "stream")
       
 23854 driver(drvAsyn)
 24267 driver(drvAsyn)
 23855 driver(stream)
 24268 driver(stream)
 23856 link(calc, lnkCalcIf)
 24269 link(calc, lnkCalcIf)
 23857 link(const, lnkConstIf)
 24270 link(const, lnkConstIf)
       
 24271 registrar(asynRegister)
       
 24272 registrar(reccasterRegistrar)
 23858 registrar(arrInitialize)
 24273 registrar(arrInitialize)
       
 24274 registrar(dbndInitialize)
 23859 registrar(arrayTestRegister)
 24275 registrar(arrayTestRegister)
       
 24276 registrar(interpRegister)
 23860 registrar(syncInitialize)
 24277 registrar(syncInitialize)
       
 24278 registrar(Keithley2kDMM_mf40Registrar)
       
 24279 registrar(streamRegistrar)
       
 24280 registrar(rsrvRegistrar)
       
 24281 registrar(asynInterposeFlushRegister)
 23861 registrar(asynInterposeEosRegister)
 24282 registrar(asynInterposeEosRegister)
 23862 registrar(asynRegister)
       
 23863 registrar(Keithley65xxEMRegistrar)
       
 23864 registrar(Keithley2kDMM_mf40Registrar)
       
 23865 registrar(aCalcMonitorMemRegister)
 24283 registrar(aCalcMonitorMemRegister)
 23866 registrar(drvAsynIPPortRegisterCommands)
 24284 registrar(drvAsynIPPortRegisterCommands)
       
 24285 registrar(editSseqRegistrar)
       
 24286 registrar(acalcTotalAllocatedMemoryRegister)
       
 24287 registrar(drvAsynKeithley648xRegister)
       
 24288 registrar(Keithley2kDMMRegistrar)
       
 24289 registrar(drvAsynIPServerPortRegisterCommands)
       
 24290 registrar(tsInitialize)
 23867 registrar(subAveRegister)
 24291 registrar(subAveRegister)
 23868 registrar(rsrvRegistrar)
       
 23869 registrar(tsInitialize)
       
 23870 registrar(acalcTotalAllocatedMemoryRegister)
       
 23871 registrar(dbndInitialize)
       
 23872 registrar(Keithley2kDMMRegistrar)
       
 23873 registrar(editSseqRegistrar)
       
 23874 registrar(asynInterposeFlushRegister)
       
 23875 registrar(drvAsynIPServerPortRegisterCommands)
       
 23876 registrar(asSub)
 24292 registrar(asSub)
 23877 registrar(streamRegistrar)
 24293 registrar(Keithley65xxEMRegistrar)
 23878 registrar(interpRegister)
 24294 function(writeFloat)
       
 24295 function(readFloat)
       
 24296 variable(dbRecordsOnceOnly, int)
       
 24297 variable(aCalcMonitorMem_debug, int)
       
 24298 variable(calcoutODLYlimit, double)
       
 24299 variable(dbThreadRealtimeLock, int)
       
 24300 variable(aCalcAsyncThreshold, int)
       
 24301 variable(CASDEBUG, int)
       
 24302 variable(transformRecordDebug, int)
       
 24303 variable(reccastMaxHoldoff, double)
       
 24304 variable(calcoutODLYprecision, int)
       
 24305 variable(dbConvertStrict, int)
       
 24306 variable(boHIGHlimit, double)
       
 24307 variable(reccastTimeout, double)
       
 24308 variable(sCalcStackLW, int)
       
 24309 variable(seqDLYprecision, int)
       
 24310 variable(sCalcoutRecordDebug, int)
       
 24311 variable(arrayTestDebug, int)
       
 24312 variable(debugSubAve, int)
       
 24313 variable(dbBptNotMonotonic, int)
       
 24314 variable(aCalcPostfixDebug, int)
       
 24315 variable(sseqRecDebug, int)
       
 24316 variable(callbackParallelThreadsDefault, int)
       
 24317 variable(devaCalcoutSoftDebug, int)
       
 24318 variable(boHIGHprecision, int)
       
 24319 variable(dbTemplateMaxVars, int)
       
 24320 variable(dbRecordsAbcSorted, int)
       
 24321 variable(aCalcPerformDebug, int)
       
 24322 variable(aCalcLoopMax, int)
       
 24323 variable(swaitRecordDebug, int)
       
 24324 variable(devsCalcoutSoftDebug, int)
       
 24325 variable(seqDLYlimit, double)
       
 24326 variable(asCaDebug, int)
 23879 variable(sCalcStackHW, int)
 24327 variable(sCalcStackHW, int)
 23880 variable(dbRecordsOnceOnly, int)
 24328 variable(streamDebug, int)
       
 24329 variable(interpDebug, int)
       
 24330 variable(sCalcLoopMax, int)
       
 24331 variable(histogramSDELprecision, int)
 23881 variable(dbQuietMacroWarnings, int)
 24332 variable(dbQuietMacroWarnings, int)
 23882 variable(streamDebug, int)
 24333 variable(sCalcPostfixDebug, int)
 23883 variable(sseqRecDebug, int)
       
 23884 variable(transformRecordDebug, int)
       
 23885 variable(aCalcMonitorMem_debug, int)
       
 23886 variable(dbTemplateMaxVars, int)
       
 23887 variable(callbackParallelThreadsDefault, int)
       
 23888 variable(aCalcoutRecordDebug, int)
       
 23889 variable(sCalcPerformDebug, int)
 24334 variable(sCalcPerformDebug, int)
 23890 variable(atExitDebug, int)
 24335 variable(atExitDebug, int)
 23891 variable(interpDebug, int)
 24336 variable(aCalcoutRecordDebug, int)
 23892 variable(CASDEBUG, int)
       
 23893 variable(dbBptNotMonotonic, int)
       
 23894 variable(sCalcoutRecordDebug, int)
       
 23895 variable(aCalcLoopMax, int)
       
 23896 variable(sCalcPostfixDebug, int)
       
 23897 variable(calcoutODLYprecision, int)
       
 23898 variable(sCalcStackLW, int)
       
 23899 variable(devsCalcoutSoftDebug, int)
       
 23900 variable(aCalcPerformDebug, int)
       
 23901 variable(sCalcLoopMax, int)
       
 23902 variable(calcoutODLYlimit, double)
       
 23903 variable(histogramSDELprecision, int)
       
 23904 variable(seqDLYlimit, double)
       
 23905 variable(arrayTestDebug, int)
       
 23906 variable(aCalcPostfixDebug, int)
       
 23907 variable(debugSubAve, int)
       
 23908 variable(boHIGHprecision, int)
       
 23909 variable(boHIGHlimit, double)
       
 23910 variable(asCaDebug, int)
       
 23911 variable(dbRecordsAbcSorted, int)
       
 23912 variable(dbThreadRealtimeLock, int)
       
 23913 variable(swaitRecordDebug, int)
       
 23914 variable(aCalcAsyncThreshold, int)
       
 23915 variable(seqDLYprecision, int)
       
 23916 variable(dbConvertStrict, int)
       
 23917 variable(devaCalcoutSoftDebug, int)