! *** 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 ! ! STRUCTURE OF A FILE ID (FID) ! DECLARE LONG CONSTANT FID$K_LENGTH = 6 DECLARE LONG CONSTANT FID$C_LENGTH = 6 DECLARE LONG CONSTANT FID$C_INDEXF = 1 ! INDEX FILE DECLARE LONG CONSTANT FID$C_BITMAP = 2 ! STORAGE MAP FILE DECLARE LONG CONSTANT FID$C_BADBLK = 3 ! BAD BLOCK FILE DECLARE LONG CONSTANT FID$C_MFD = 4 ! MASTER FILE DIRECTORY DECLARE LONG CONSTANT FID$C_CORIMG = 5 ! CORE IMAGE FILE DECLARE LONG CONSTANT FID$C_VOLSET = 6 ! VOLUME SET LIST FILE DECLARE LONG CONSTANT FID$C_CONTIN = 7 ! STANRARD CONTINUATION FILE DECLARE LONG CONSTANT FID$C_BACKUP = 8 ! BACKUP LOG FILE DECLARE LONG CONSTANT FID$C_BADLOG = 9 ! BAD BLOCK LOG FILE DECLARE LONG CONSTANT FID$C_SECURITY = 10 ! SECURITY FILE DECLARE LONG CONSTANT FID$C_GPT = 11 ! GPT FILE DECLARE LONG CONSTANT FID$C_FREFIL = 10 ! FREE SPACE FILE DECLARE LONG CONSTANT FID$S_FIDDEF = 6 record FIDDEF group FID$R_FID_OVERLAY variant case WORD FID$W_FID ( 1 to 3 ) ! File Identification Number case group FID$R_FID_FIELDS WORD FID$W_NUM ! FILE NUMBER WORD FID$W_SEQ ! FILE SEQUENCE NUMBER group FID$R_RVN_OVERLAY variant case WORD FID$W_RVN ! RELATIVE VOLUME NUMBER case group FID$R_RVN_FIELDS BYTE FID$B_RVN ! BYTE FORM OF RVN BYTE FID$B_NMX ! FILE NUMBER EXTENSION ! FILE ID'S OF THE RESERVED FILES end group FID$R_RVN_FIELDS end variant end group FID$R_RVN_OVERLAY end group FID$R_FID_FIELDS case group FID$R_ISO_9660_FIELDS ! File ID fields for ISO 9660 WORD FID$W_DIRNUM ! Directory number of File-Id LONG FID$L_RECNUM ! Record number of File-ID end group FID$R_ISO_9660_FIELDS end variant end group FID$R_FID_OVERLAY end record FIDDEF