!*** MODULE $OPCDEF *** !DEC$ OPTIONS/ALIGN=(RECORDS=PACKED,COMMONS=PACKED)/NOWARN PARAMETER OPC$_RQ_TERME = '00000001'X ! ENABLE TERMINAL PARAMETER OPC$_RQ_LOGI = '00000002'X ! INITIALIZE THE LOG PARAMETER OPC$_RQ_RQST = '00000003'X ! OPERATOR REQUEST PARAMETER OPC$_RQ_REPLY = '00000004'X ! OPERATOR REPLY PARAMETER OPC$_RQ_CANCEL = '00000005'X ! CANCEL REQUEST PARAMETER OPC$_RQ_STATUS = '00000006'X ! REQUEST OPERATOR STATUS PARAMETER OPC$_RQ_SECURITY = '00000007'X ! MESSAGE TO SECURITY OPERATOR PARAMETER OPC$_RQ_LICENSE = '00000008'X ! MESSAGE TO LICENSE OPERATOR PARAMETER OPC$M_RQ_NOOCS = '00000080'X PARAMETER OPC$M_NM_CENTRL = '00000001'X PARAMETER OPC$M_NM_PRINT = '00000002'X PARAMETER OPC$M_NM_TAPES = '00000004'X PARAMETER OPC$M_NM_DISKS = '00000008'X PARAMETER OPC$M_NM_DEVICE = '00000010'X PARAMETER OPC$M_NM_CARDS = '00000020'X PARAMETER OPC$M_NM_NTWORK = '00000040'X PARAMETER OPC$M_NM_CLUSTER = '00000080'X PARAMETER OPC$M_NM_SECURITY = '00000100'X PARAMETER OPC$M_NM_REPLY = '00000200'X PARAMETER OPC$M_NM_SOFTWARE = '00000400'X PARAMETER OPC$M_NM_LICENSE = '00000800'X PARAMETER OPC$M_NM_OPER1 = '00001000'X PARAMETER OPC$M_NM_OPER2 = '00002000'X PARAMETER OPC$M_NM_OPER3 = '00004000'X PARAMETER OPC$M_NM_OPER4 = '00008000'X PARAMETER OPC$M_NM_OPER5 = '00010000'X PARAMETER OPC$M_NM_OPER6 = '00020000'X PARAMETER OPC$M_NM_OPER7 = '00040000'X PARAMETER OPC$M_NM_OPER8 = '00080000'X PARAMETER OPC$M_NM_OPER9 = '00100000'X PARAMETER OPC$M_NM_OPER10 = '00200000'X PARAMETER OPC$M_NM_OPER11 = '00400000'X PARAMETER OPC$M_NM_OPER12 = '00800000'X STRUCTURE /OPCDEF/ BYTE OPC$B_MS_TYPE ! MESSAGE TYPE UNION MAP UNION MAP BYTE OPC$B_MS_TARGET ! MESSAGE TARGET END MAP MAP BYTE OPC$B_MS_ENAB ! MESSAGE ENABLES END MAP END UNION INTEGER*2 OPC$W_MS_STATUS ! MESSAGE STATUS END MAP MAP BYTE OPC$Z_MS_TARGET_CLASSES(1:3) END MAP MAP BYTE OPC$Z_MS_ENAB_TERMINALS(1:3) END MAP END UNION UNION MAP INTEGER*4 OPC$L_MS_RPLYID ! REPLY ID END MAP MAP UNION MAP INTEGER*4 OPC$L_MS_MASK ! MESSAGE MASK END MAP MAP INTEGER*4 OPC$L_MS_RQSTID ! REQUEST ID END MAP END UNION END MAP END UNION UNION MAP INTEGER*4 OPC$L_MS_TEXT ! MESSAGE TEXT END MAP MAP INTEGER*2 OPC$W_MS_OUNIT ! OPERATOR UNIT NUMBER CHARACTER*1 OPC$T_MS_ONAME ! OPERATOR NAME END MAP END UNION INTEGER*2 %FILL(1:7) ! SPACE FOR NAME INTEGER*4 OPC$L_MS_OTEXT(1:32) ! OPERATOR TEXT UNION MAP INTEGER*4 OPC$L_MS_MAXSZ ! MESSAGE MAX SIZE END MAP ! OPERATOR MESSAGE TYPES MAP PARAMETER OPC$S_NM_CENTRL = 1 PARAMETER OPC$V_NM_CENTRL = 0 ! PARAMETER OPC$S_NM_PRINT = 1 PARAMETER OPC$V_NM_PRINT = 1 PARAMETER OPC$S_NM_TAPES = 1 PARAMETER OPC$V_NM_TAPES = 2 PARAMETER OPC$S_NM_DISKS = 1 PARAMETER OPC$V_NM_DISKS = 3 PARAMETER OPC$S_NM_DEVICE = 1 PARAMETER OPC$V_NM_DEVICE = 4 PARAMETER OPC$S_NM_CARDS = 1 PARAMETER OPC$V_NM_CARDS = 5 PARAMETER OPC$S_NM_NTWORK = 1 PARAMETER OPC$V_NM_NTWORK = 6 PARAMETER OPC$S_NM_CLUSTER = 1 PARAMETER OPC$V_NM_CLUSTER = 7 PARAMETER OPC$S_NM_SECURITY = 1 PARAMETER OPC$V_NM_SECURITY = 8 PARAMETER OPC$S_NM_REPLY = 1 PARAMETER OPC$V_NM_REPLY = 9 PARAMETER OPC$S_NM_SOFTWARE = 1 PARAMETER OPC$V_NM_SOFTWARE = 10 PARAMETER OPC$S_NM_LICENSE = 1 PARAMETER OPC$V_NM_LICENSE = 11 PARAMETER OPC$S_NM_OPER1 = 1 PARAMETER OPC$V_NM_OPER1 = 12 PARAMETER OPC$S_NM_OPER2 = 1 PARAMETER OPC$V_NM_OPER2 = 13 PARAMETER OPC$S_NM_OPER3 = 1 PARAMETER OPC$V_NM_OPER3 = 14 PARAMETER OPC$S_NM_OPER4 = 1 PARAMETER OPC$V_NM_OPER4 = 15 PARAMETER OPC$S_NM_OPER5 = 1 PARAMETER OPC$V_NM_OPER5 = 16 PARAMETER OPC$S_NM_OPER6 = 1 PARAMETER OPC$V_NM_OPER6 = 17 PARAMETER OPC$S_NM_OPER7 = 1 PARAMETER OPC$V_NM_OPER7 = 18 PARAMETER OPC$S_NM_OPER8 = 1 PARAMETER OPC$V_NM_OPER8 = 19 PARAMETER OPC$S_NM_OPER9 = 1 PARAMETER OPC$V_NM_OPER9 = 20 PARAMETER OPC$S_NM_OPER10 = 1 PARAMETER OPC$V_NM_OPER10 = 21 PARAMETER OPC$S_NM_OPER11 = 1 PARAMETER OPC$V_NM_OPER11 = 22 PARAMETER OPC$S_NM_OPER12 = 1 PARAMETER OPC$V_NM_OPER12 = 23 BYTE %FILL (3) END MAP END UNION END STRUCTURE ! OPCDEF PARAMETER OPC$M_OPR_CENTRAL = '00000001'X PARAMETER OPC$M_OPR_PRINTER = '00000002'X PARAMETER OPC$M_OPR_TAPES = '00000004'X PARAMETER OPC$M_OPR_DISKS = '00000008'X PARAMETER OPC$M_OPR_DEVICES = '00000010'X PARAMETER OPC$M_OPR_CARDS = '00000020'X PARAMETER OPC$M_OPR_NETWORK = '00000040'X PARAMETER OPC$M_OPR_CLUSTER = '00000080'X PARAMETER OPC$M_OPR_SECURITY = '00000100'X PARAMETER OPC$M_OPR_REPLY = '00000200'X PARAMETER OPC$M_OPR_SOFTWARE = '00000400'X PARAMETER OPC$M_OPR_LICENSE = '00000800'X PARAMETER OPC$M_OPR_USER1 = '00001000'X PARAMETER OPC$M_OPR_USER2 = '00002000'X PARAMETER OPC$M_OPR_USER3 = '00004000'X PARAMETER OPC$M_OPR_USER4 = '00008000'X PARAMETER OPC$M_OPR_USER5 = '00010000'X PARAMETER OPC$M_OPR_USER6 = '00020000'X PARAMETER OPC$M_OPR_USER7 = '00040000'X PARAMETER OPC$M_OPR_USER8 = '00080000'X PARAMETER OPC$M_OPR_USER9 = '00100000'X PARAMETER OPC$M_OPR_USER10 = '00200000'X PARAMETER OPC$M_OPR_USER11 = '00400000'X PARAMETER OPC$M_OPR_USER12 = '00800000'X STRUCTURE /OPC_OPRDEF/ UNION MAP PARAMETER OPC$S_OPR_CENTRAL = 1 PARAMETER OPC$V_OPR_CENTRAL = 0 PARAMETER OPC$S_OPR_PRINTER = 1 PARAMETER OPC$V_OPR_PRINTER = 1 PARAMETER OPC$S_OPR_TAPES = 1 PARAMETER OPC$V_OPR_TAPES = 2 PARAMETER OPC$S_OPR_DISKS = 1 PARAMETER OPC$V_OPR_DISKS = 3 PARAMETER OPC$S_OPR_DEVICES = 1 PARAMETER OPC$V_OPR_DEVICES = 4 PARAMETER OPC$S_OPR_CARDS = 1 PARAMETER OPC$V_OPR_CARDS = 5 PARAMETER OPC$S_OPR_NETWORK = 1 PARAMETER OPC$V_OPR_NETWORK = 6 PARAMETER OPC$S_OPR_CLUSTER = 1 PARAMETER OPC$V_OPR_CLUSTER = 7 PARAMETER OPC$S_OPR_SECURITY = 1 PARAMETER OPC$V_OPR_SECURITY = 8 PARAMETER OPC$S_OPR_REPLY = 1 PARAMETER OPC$V_OPR_REPLY = 9 PARAMETER OPC$S_OPR_SOFTWARE = 1 PARAMETER OPC$V_OPR_SOFTWARE = 10 PARAMETER OPC$S_OPR_LICENSE = 1 PARAMETER OPC$V_OPR_LICENSE = 11 PARAMETER OPC$S_OPR_USER1 = 1 PARAMETER OPC$V_OPR_USER1 = 12 PARAMETER OPC$S_OPR_USER2 = 1 PARAMETER OPC$V_OPR_USER2 = 13 PARAMETER OPC$S_OPR_USER3 = 1 PARAMETER OPC$V_OPR_USER3 = 14 PARAMETER OPC$S_OPR_USER4 = 1 PARAMETER OPC$V_OPR_USER4 = 15 PARAMETER OPC$S_OPR_USER5 = 1 PARAMETER OPC$V_OPR_USER5 = 16 PARAMETER OPC$S_OPR_USER6 = 1 PARAMETER OPC$V_OPR_USER6 = 17 PARAMETER OPC$S_OPR_USER7 = 1 PARAMETER OPC$V_OPR_USER7 = 18 PARAMETER OPC$S_OPR_USER8 = 1 PARAMETER OPC$V_OPR_USER8 = 19 PARAMETER OPC$S_OPR_USER9 = 1 PARAMETER OPC$V_OPR_USER9 = 20 PARAMETER OPC$S_OPR_USER10 = 1 PARAMETER OPC$V_OPR_USER10 = 21 PARAMETER OPC$S_OPR_USER11 = 1 PARAMETER OPC$V_OPR_USER11 = 22 PARAMETER OPC$S_OPR_USER12 = 1 PARAMETER OPC$V_OPR_USER12 = 23 BYTE %FILL (3) END MAP END UNION END STRUCTURE ! OPC_OPRDEF PARAMETER OPC$K_SYSTEM = '00000001'X PARAMETER OPC$K_GROUP = '00000002'X PARAMETER OPC$K_USER = '00000003'X PARAMETER OPC$K_UNSPEC = '00000004'X PARAMETER OPC$C_SYSTEM = '00000001'X PARAMETER OPC$C_GROUP = '00000002'X PARAMETER OPC$C_USER = '00000003'X PARAMETER OPC$C_UNSPEC = '00000004'X PARAMETER OPC$K_SW_VERSION = '00000009'X PARAMETER OPC$K_MAXREAD = '00000A00'X PARAMETER OPC$K_MAXMESSAGE = '00000800'X PARAMETER OPC$K_COMHDRSIZ = '00000026'X PARAMETER OPC$_OPCOMERROR = '0001869F'X ! New error message PARAMETER OPC$_X_OPRENABLE = '0000000A'X PARAMETER OPC$_X_LOGFILE = '0000000B'X PARAMETER OPC$_X_REQUEST = '0000000C'X PARAMETER OPC$_X_REPLY = '0000000D'X PARAMETER OPC$_X_CANCEL = '0000000E'X PARAMETER OPC$_X_STATUS = '0000000F'X PARAMETER OPC$_X_SHUTDOWN = '00000010'X PARAMETER OPC$_X_TIMESTAMP = '00000011'X PARAMETER OPC$_X_SECURITY = '00000012'X PARAMETER OPC$_X_CLUSMSG = '00000013'X PARAMETER OPC$_X_DEBUG = '00000014'X PARAMETER OPC$_X_CNXMAN = '00000015'X PARAMETER OPC$_X_REQUEST_END_MARK = '00000016'X PARAMETER OPC$K_CLM__ACKNOWLEDGEMENT = '00000001'X ! Response to acknowledge request PARAMETER OPC$K_CLM__ACKNOWLEDGE_PLEASE = '00000002'X ! Request for remote node to announce itself PARAMETER OPC$K_CLM__CANCEL = '00000003'X ! Explicit cancel of request PARAMETER OPC$K_CLM__CHECK_OPERATOR = '00000004'X ! Make sure this operator is in the database PARAMETER OPC$K_CLM__CHECK_REQUEST = '00000005'X ! Make sure a request is in the database PARAMETER OPC$K_CLM__CLUMBX = '00000006'X ! Cluster mailbox message passed from cnxman PARAMETER OPC$K_CLM__CLUSTER = '00000007'X ! Cluster status change report PARAMETER OPC$K_CLM__DEVICE = '00000008'X ! Device message (on-line, off-line etc) PARAMETER OPC$K_CLM__IMP_CANCEL = '00000009'X ! Implicitly cancel a request PARAMETER OPC$K_CLM__IMP_DISABLE = '0000000A'X ! Implicitly disable an operator PARAMETER OPC$K_CLM__OPRENABLE = '0000000B'X ! Tell everyone else to enable or disable an operator PARAMETER OPC$K_CLM__REPLY = '0000000C'X ! REPLY /PEND etc command PARAMETER OPC$K_CLM__REPLY_COMPLETE = '0000000D'X ! Operator request completed by operator PARAMETER OPC$K_CLM__REQUEST = '0000000E'X ! Operator request PARAMETER OPC$K_CLM__RPYBRD = '0000000F'X ! Message from OPCOM to remotes, info for cluster REPLY ! Message from OPCOM to remotes, info for cluster REPLY /TERM PARAMETER OPC$K_CLM__RPYBRD_LOCAL = '00000010'X ! Broadcast message from REPLY to OPCOM on local PARAMETER OPC$K_CLM__RPYNOT = '00000011'X ! Reply notifications PARAMETER OPC$K_CLM__SECURITY = '00000012'X ! Security alarm from remote PARAMETER OPC$K_CLM__SHUTDOWN = '00000013'X ! Shut down operations PARAMETER OPC$K_CLM__LOGFILE = '00000014'X ! Enable/disable logfile operator PARAMETER OPC$K_CLM__REQUEST_END_MARK = '00000015'X PARAMETER OPC$K_HDR_SIZE = '0000001A'X ! Size of common header STRUCTURE /HEADER_MESSAGE/ BYTE OPC$B_RQSTCODE ! Request code BYTE OPC$B_SCOPE ! Request SCOPE INTEGER*4 OPC$L_OPTIONS ! Request independent option bits. UNION MAP INTEGER*4 OPC$L_RQ_OPTIONS ! Request dependent options END MAP MAP BYTE OPC$B_RQOPT_CODE ! a code byte and some fill BYTE %FILL INTEGER*2 %FILL END MAP END UNION INTEGER*4 OPC$L_ATTNMASK1 ! Attention mask part 1 INTEGER*4 OPC$L_ATTNMASK2 ! Attention mask part 2 INTEGER*4 OPC$L_RQSTID ! User specified request id # INTEGER*4 OPC$L_UIC ! UIC of requestor END STRUCTURE ! HEADER_MESSAGE PARAMETER OPC$M_NOLOG = '00000001'X PARAMETER OPC$M_NOBRD = '00000002'X PARAMETER OPC$M_NOCLUSTER = '00000004'X STRUCTURE /OPC$$FILL_0_/ UNION MAP INTEGER*4 %FILL END MAP MAP PARAMETER OPC$S_NOLOG = 1 PARAMETER OPC$V_NOLOG = 0 ! Do not log the action PARAMETER OPC$S_NOBRD = 1 PARAMETER OPC$V_NOBRD = 1 ! Do not broadcast PARAMETER OPC$S_NOCLUSTER = 1 PARAMETER OPC$V_NOCLUSTER = 2 ! Do not send to cluster BYTE %FILL (1) END MAP END UNION END STRUCTURE ! OPC$$FILL_0_ PARAMETER OPC$K_OPRENABLE_MIN_SIZE = '0000001E'X ! Min message size header + 4 STRUCTURE /OPRENABLE_MESSAGE/ BYTE %FILL(1:26) ! unsupported type CHARACTER*0 OPC$T_OPRENABLE_OPR ! Start of oper dev name END STRUCTURE ! OPRENABLE_MESSAGE PARAMETER OPC$M_DISABLE = '00000001'X PARAMETER OPC$M_PERMOPER = '00000002'X PARAMETER OPC$M_NOREMIND = '00000004'X STRUCTURE /OPC$$FILL_3_/ UNION MAP INTEGER*4 %FILL END MAP MAP PARAMETER OPC$S_DISABLE = 1 PARAMETER OPC$V_DISABLE = 0 PARAMETER OPC$S_PERMOPER = 1 PARAMETER OPC$V_PERMOPER = 1 PARAMETER OPC$S_NOREMIND = 1 PARAMETER OPC$V_NOREMIND = 2 BYTE %FILL (1) END MAP END UNION END STRUCTURE ! OPC$$FILL_3_ PARAMETER OPC$K_LOGFILE_MIN_SIZE = '0000001E'X ! Min message size header + 4 PARAMETER OPC$K_INITLOG = '00000000'X ! If one is open, close logfile. Open new logfile. PARAMETER OPC$K_CLOSELOG = '00000001'X ! Close logfile. PARAMETER OPC$K_ENABLELOG = '00000002'X ! If no logfile is open, open a logfile. ! Add classes in ATTNMASK to logfile operator mask. PARAMETER OPC$K_DISABLELOG = '00000003'X ! Remove classes in ATTNMASK from logfile operator mask. ! If mask goes to 0, close logfile. PARAMETER OPC$K_MAX_LOGOPT = '00000004'X ! One more than maximum allowed STRUCTURE /LOGFILE_MESSAGE/ BYTE %FILL(1:26) ! Skip to request dependent options ! unsupported type CHARACTER*0 OPC$T_LOGFILE_OPR ! Start of oper dev name END STRUCTURE ! LOGFILE_MESSAGE PARAMETER OPC$K_REQUEST_MIN_SIZE = '0000001C'X ! Min message size STRUCTURE /REQUEST_MESSAGE/ BYTE %FILL(1:26) INTEGER*2 OPC$W_REQUEST_LENGTH ! Length of text ! unsupported type CHARACTER*0 OPC$T_REQUEST_TEXT ! Start of text END STRUCTURE ! REQUEST_MESSAGE PARAMETER OPC$K_SECURITY_MIN_SIZE = '0000001C'X ! Min message size STRUCTURE /SECURITY_MESSAGE/ BYTE %FILL(1:26) INTEGER*2 OPC$W_SECURITY_LENGTH ! Length of text ! unsupported type CHARACTER*0 OPC$T_SECURITY_TEXT ! Start of text END STRUCTURE ! SECURITY_MESSAGE PARAMETER OPC$K_REPLY_MIN_SIZE = '00000020'X STRUCTURE /REPLY_MESSAGE/ BYTE %FILL(1:26) ! unsupported type CHARACTER*0 OPC$T_REPLY_OPR END STRUCTURE ! REPLY_MESSAGE PARAMETER OPC$K_STATUS_MIN_SIZE = '0000001E'X ! Min message size header + 4 STRUCTURE /STATUS_MESSAGE/ BYTE %FILL(1:26) ! unsupported type CHARACTER*0 OPC$T_STATUS_OPR ! Start of text END STRUCTURE ! STATUS_MESSAGE PARAMETER OPC$K_TIMESTAMP_MIN_SIZE = '0000001A'X ! Min message size STRUCTURE /TIMESTAMP_MESSAGE/ BYTE %FILL(1:26) END STRUCTURE ! TIMESTAMP_MESSAGE PARAMETER OPC$K_SHUTDOWN_MIN_SIZE = '0000001A'X ! Min message size STRUCTURE /SHUTDOWN_MESSAGE/ BYTE %FILL(1:26) END STRUCTURE ! SHUTDOWN_MESSAGE PARAMETER OPC$M_CLUSTER = '00000001'X STRUCTURE /OPC$$FILL_6_/ UNION MAP INTEGER*4 %FILL END MAP MAP PARAMETER OPC$S_CLUSTER = 1 PARAMETER OPC$V_CLUSTER = 0 BYTE %FILL (1) END MAP END UNION END STRUCTURE ! OPC$$FILL_6_ PARAMETER OPC$K_CANCEL_MIN_SIZE = '0000001A'X ! Min message size STRUCTURE /CANCEL_MESSAGE/ BYTE %FILL(1:26) END STRUCTURE ! CANCEL_MESSAGE PARAMETER OPC$M_RQSTDONE = '00000001'X STRUCTURE /OPC$$FILL_9_/ UNION MAP INTEGER*4 %FILL END MAP MAP PARAMETER OPC$S_RQSTDONE = 1 PARAMETER OPC$V_RQSTDONE = 0 BYTE %FILL (1) END MAP END UNION END STRUCTURE ! OPC$$FILL_9_ STRUCTURE /OPCF_ARG/ UNION MAP INTEGER*4 OPCF_ARG$l_arg_data ! argument data END MAP MAP INTEGER*2 OPCF_ARG$w_arg_offset ! The offset to the argument data INTEGER*2 OPCF_ARG$w_arg_cntrl ! A control code for argument handling END MAP END UNION END STRUCTURE ! OPCF_ARG ! This structure defines a message sent to OPCOM using the MSG$_OPCFAO message type. STRUCTURE /OPCFAO/ INTEGER*2 OPCF$w_msgtype ! Dispatch message type code INTEGER*2 OPCF$w_spare_1 ! Unused word - alignment INTEGER*4 OPCF$l_opc_msg ! The message file code for msg text INTEGER*4 OPCF$l_opc_class_msk ! The operator class mask INTEGER*4 OPCF$l_arg_count ! The number of arguments UNION MAP RECORD /OPCF_ARG/ OPCF$r_item_arg(1:60) ! Argument items END MAP MAP CHARACTER*240 OPCF$t_item_cd ! Argument data - character END MAP MAP INTEGER*4 OPCF$l_item_ld(1:60) ! Argument data - long END MAP END UNION END STRUCTURE ! OPCFAO ! OPCFAO option codes. Unless commented otherwise, these codes correspond to ! the equivalent FAO op code (e.g. !AC --> AC, !%T --> T). These codes are ! used as input arguments to exe_std$sndopcfao as controls. PARAMETER OPCF$K_AC = '00000001'X PARAMETER OPCF$K_AD = '00000002'X PARAMETER OPCF$K_AF = '00000003'X PARAMETER OPCF$K_AS = '00000004'X PARAMETER OPCF$K_AS_DEVICE_NAME = '00000005'X ! Pass UCB for conversion to device name string wit ! Pass UCB for conversion to device name string with descript PARAMETER OPCF$K_AZ = '00000006'X PARAMETER OPCF$K_D = '00000007'X PARAMETER OPCF$K_I = '00000008'X PARAMETER OPCF$K_OA = '00000009'X PARAMETER OPCF$K_OB = '0000000A'X PARAMETER OPCF$K_OH = '0000000B'X PARAMETER OPCF$K_OI = '0000000C'X PARAMETER OPCF$K_OJ = '0000000D'X PARAMETER OPCF$K_OL = '0000000E'X PARAMETER OPCF$K_OQ = '0000000F'X PARAMETER OPCF$K_OW = '00000010'X PARAMETER OPCF$K_SA = '00000011'X PARAMETER OPCF$K_SB = '00000012'X PARAMETER OPCF$K_SH = '00000013'X PARAMETER OPCF$K_SI = '00000014'X PARAMETER OPCF$K_SJ = '00000015'X PARAMETER OPCF$K_SL = '00000016'X PARAMETER OPCF$K_SQ = '00000017'X PARAMETER OPCF$K_SW = '00000018'X PARAMETER OPCF$K_T = '00000019'X PARAMETER OPCF$K_U = '0000001A'X PARAMETER OPCF$K_UA = '0000001B'X PARAMETER OPCF$K_UB = '0000001C'X PARAMETER OPCF$K_UH = '0000001D'X PARAMETER OPCF$K_UI = '0000001E'X PARAMETER OPCF$K_UJ = '0000001F'X PARAMETER OPCF$K_UL = '00000020'X PARAMETER OPCF$K_UQ = '00000021'X PARAMETER OPCF$K_UW = '00000022'X PARAMETER OPCF$K_XA = '00000023'X PARAMETER OPCF$K_XB = '00000024'X PARAMETER OPCF$K_XH = '00000025'X PARAMETER OPCF$K_XI = '00000026'X PARAMETER OPCF$K_XJ = '00000027'X PARAMETER OPCF$K_XL = '00000028'X PARAMETER OPCF$K_XQ = '00000029'X PARAMETER OPCF$K_XW = '0000002A'X PARAMETER OPCF$K_ZA = '0000002B'X PARAMETER OPCF$K_ZB = '0000002C'X PARAMETER OPCF$K_ZH = '0000002D'X PARAMETER OPCF$K_ZI = '0000002E'X PARAMETER OPCF$K_ZJ = '0000002F'X PARAMETER OPCF$K_ZL = '00000030'X PARAMETER OPCF$K_ZQ = '00000031'X PARAMETER OPCF$K_ZW = '00000032'X PARAMETER OPCF$K_MIN_OPCFAO_CNTRL = '00000001'X PARAMETER OPCF$K_MAX_OPCFAO_CNTRL = '00000032'X PARAMETER OPCF$K_BY_REF = '00000001'X ! Pass argument by reference PARAMETER OPCF$K_BY_VAL = '00000002'X ! Pass argument by value PARAMETER OPCF$K_BY_DESC = '00000003'X ! Pass argument by descriptor !DEC$ END OPTIONS