! *** PREDECLARED TYPES %IF %DECLARED ( %BASIC$QUADWORD_DECLARED ) = 0 %THEN RECORD BASIC$QUADWORD LONG FILL ( 2 ) END RECORD %LET %BASIC$QUADWORD_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$OCTAWORD_DECLARED ) = 0 %THEN RECORD BASIC$OCTAWORD LONG FILL ( 4 ) END RECORD %LET %BASIC$OCTAWORD_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$HFLOAT_AXP_DECLARED ) = 0 %THEN RECORD BASIC$HFLOAT_AXP LONG FILL ( 4 ) END RECORD %LET %BASIC$HFLOAT_AXP_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$F_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$F_FLOATING_COMPLEX SINGLE REAL_PART SINGLE IMAGINARY_PART END RECORD %LET %BASIC$F_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$D_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$D_FLOATING_COMPLEX DOUBLE REAL_PART DOUBLE IMAGINARY_PART END RECORD %LET %BASIC$D_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$G_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$G_FLOATING_COMPLEX GFLOAT REAL_PART GFLOAT IMAGINARY_PART END RECORD %LET %BASIC$G_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$H_FLOAT_AXP_CMPLX_DCL ) = 0 %THEN RECORD BASIC$H_FLOATING_COMPLEX_AXP BASIC$HFLOAT_AXP REAL_PART BASIC$HFLOAT_AXP IMAGINARY_PART END RECORD %LET %BASIC$H_FLOAT_AXP_CMPLX_DCL = 1 %END %IF ! ! EVAX GSD entry - P-section definition in shareable image ! DECLARE LONG CONSTANT ESGPS$M_PIC = x'00000001' DECLARE LONG CONSTANT ESGPS$M_LIB = x'00000002' DECLARE LONG CONSTANT ESGPS$M_OVR = x'00000004' DECLARE LONG CONSTANT ESGPS$M_REL = x'00000008' DECLARE LONG CONSTANT ESGPS$M_GBL = x'00000010' DECLARE LONG CONSTANT ESGPS$M_SHR = x'00000020' DECLARE LONG CONSTANT ESGPS$M_EXE = x'00000040' DECLARE LONG CONSTANT ESGPS$M_RD = x'00000080' DECLARE LONG CONSTANT ESGPS$M_WRT = x'00000100' DECLARE LONG CONSTANT ESGPS$M_VEC = x'00000200' DECLARE LONG CONSTANT ESGPS$M_NOMOD = x'00000400' DECLARE LONG CONSTANT ESGPS$M_COM = x'00000800' DECLARE LONG CONSTANT ESGPS$M_ALLOC_64BIT = x'00001000' DECLARE LONG CONSTANT ESGPS$K_NAME = 25 DECLARE LONG CONSTANT ESGPS$C_NAME = 25 DECLARE LONG CONSTANT ESGPS$S_ESGPSDEF = 56 record ESGPSDEF group ESGPS$R_GSDTYP_OVERLAY variant case WORD ESGPS$W_GSDTYP ! Typ field case group ESGPS$R_GSDTYP_FIELDS STRING ESGPS$T_START = 0 BYTE ESGPSDEF$$_FILL_1 end group ESGPS$R_GSDTYP_FIELDS end variant end group ESGPS$R_GSDTYP_OVERLAY WORD ESGPS$W_SIZE ! size of this ESGPS BYTE ESGPS$B_ALIGN ! P-sect alignment BYTE ESGPS$B_TEMP ! pad for allignment group ESGPS$R_FLAGS_OVERLAY variant case WORD ESGPS$W_FLAGS ! P-sect flags case group ESGPS$R_FLAGS_BITS ! Position independent ! From a shareable image ! Overlaid memory allocation ! Relocatable ! Global scope ! Shareable ! Executable ! Readable ! Writeable ! Vector psect ! Not stored into ! Associated with COMM sym ! Load in 64-bit space WORD PIC_bits ! COMMENT ADDED BY SDL - PIC_bits contains bits PIC through FILL_25_ end group ESGPS$R_FLAGS_BITS end variant end group ESGPS$R_FLAGS_OVERLAY LONG ESGPS$L_ALLOC ! Length of this psect in shr image LONG ESGPS$L_BASE ! Offset into img of psect, copy of symbol vector group ESGPS$R_VALUE_OVERLAY variant case BASIC$QUADWORD ESGPS$Q_VALUE case LONG ESGPS$L_VALUE end variant end group ESGPS$R_VALUE_OVERLAY BYTE ESGPS$B_NAMLNG ! Length of p-sect name STRING ESGPS$T_NAME = 31 ! Name field end record ESGPSDEF ! ! EVAX GSD entry - 64-Bit P-section definition in shareable image ! DECLARE LONG CONSTANT ESGPS64$M_PIC = x'00000001' DECLARE LONG CONSTANT ESGPS64$M_LIB = x'00000002' DECLARE LONG CONSTANT ESGPS64$M_OVR = x'00000004' DECLARE LONG CONSTANT ESGPS64$M_REL = x'00000008' DECLARE LONG CONSTANT ESGPS64$M_GBL = x'00000010' DECLARE LONG CONSTANT ESGPS64$M_SHR = x'00000020' DECLARE LONG CONSTANT ESGPS64$M_EXE = x'00000040' DECLARE LONG CONSTANT ESGPS64$M_RD = x'00000080' DECLARE LONG CONSTANT ESGPS64$M_WRT = x'00000100' DECLARE LONG CONSTANT ESGPS64$M_VEC = x'00000200' DECLARE LONG CONSTANT ESGPS64$M_NOMOD = x'00000400' DECLARE LONG CONSTANT ESGPS64$M_COM = x'00000800' DECLARE LONG CONSTANT ESGPS64$M_ALLOC_64BIT = x'00001000' DECLARE LONG CONSTANT ESGPS64$K_NAME = 33 DECLARE LONG CONSTANT ESGPS64$C_NAME = 33 DECLARE LONG CONSTANT ESGPS64$S_ESGPS64DEF = 64 record ESGPS64DEF group ESGPS64$R_GSDTYP_OVERLAY variant case WORD ESGPS64$W_GSDTYP ! Typ field case group ESGPS64$R_GSDTYP_FIELDS STRING ESGPS64$T_START = 0 BYTE ESGPS64DEF$$_FILL_1 end group ESGPS64$R_GSDTYP_FIELDS end variant end group ESGPS64$R_GSDTYP_OVERLAY WORD ESGPS64$W_SIZE ! size of this ESGPS BYTE ESGPS64$B_ALIGN ! P-sect alignment BYTE ESGPS64$B_TEMP ! pad for allignment group ESGPS64$R_FLAGS_OVERLAY variant case WORD ESGPS64$W_FLAGS ! P-sect flags case group ESGPS64$R_FLAGS_BITS ! Position independent ! From a shareable image ! Overlaid memory allocation ! Relocatable ! Global scope ! Shareable ! Executable ! Readable ! Writeable ! Vector psect ! Not stored into ! Associated with COMM sym ! Load in 64-bit space WORD PIC_bits ! COMMENT ADDED BY SDL - PIC_bits contains bits PIC through FILL_26_ end group ESGPS64$R_FLAGS_BITS end variant end group ESGPS64$R_FLAGS_OVERLAY group ESGPS64$R_ALLOC_OVERLAY variant case BASIC$QUADWORD ESGPS64$Q_ALLOC ! Length of this psect in shr image case LONG ESGPS64$L_ALLOC ! Low Longword end variant end group ESGPS64$R_ALLOC_OVERLAY group ESGPS64$R_BASE_OVERLAY variant case BASIC$QUADWORD ESGPS64$Q_BASE ! Offset into img of psect, copy of symbol vector case LONG ESGPS64$L_BASE ! Low Longword end variant end group ESGPS64$R_BASE_OVERLAY group ESGPS64$R_VALUE_OVERLAY variant case BASIC$QUADWORD ESGPS64$Q_VALUE case LONG ESGPS64$L_VALUE end variant end group ESGPS64$R_VALUE_OVERLAY BYTE ESGPS64$B_NAMLNG ! Length of p-sect name STRING ESGPS64$T_NAME = 31 ! Name field end record ESGPS64DEF