! *** 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 ! + ! SDB Function Codes ! ! - ! BASE AND OFFSET OF 1 DECLARE LONG CONSTANT SDB$C_MODE_KERNEL = 0 DECLARE LONG CONSTANT SDB$C_MODE_EXEC = 1 DECLARE LONG CONSTANT SDB$C_MODE_SUPER = 2 DECLARE LONG CONSTANT SDB$C_MODE_USER = 3 DECLARE LONG CONSTANT SDB$M_MODE_KERNEL = 1 DECLARE LONG CONSTANT SDB$M_MODE_EXEC = 2 DECLARE LONG CONSTANT SDB$M_MODE_SUPER = 4 DECLARE LONG CONSTANT SDB$M_MODE_USER = 8 DECLARE LONG CONSTANT SDB$C_FUNC_GET_DSDB = 0 DECLARE LONG CONSTANT SDB$C_FUNC_FREE_DSDB = 1 DECLARE LONG CONSTANT SDB$C_FUNC_GET_ISDB = 2 DECLARE LONG CONSTANT SDB$C_FUNC_FREE_ISDB = 3 DECLARE LONG CONSTANT SDB$C_FUNC_SET_SDB = 4 DECLARE LONG CONSTANT SDB$M_ACC_WRITE = 1 DECLARE LONG CONSTANT SDB$M_ACC_READ = 2 DECLARE LONG CONSTANT SDB$V_ACC_WRITE = 0 DECLARE LONG CONSTANT SDB$V_ACC_READ = 1