! *** 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 ! ! Define symbols for the item list QIO format ! ! Item list type codes DECLARE LONG CONSTANT TRM$_MODIFIERS = 0 DECLARE LONG CONSTANT TRM$_EDITMODE = 1 DECLARE LONG CONSTANT TRM$_TIMEOUT = 2 DECLARE LONG CONSTANT TRM$_TERM = 3 DECLARE LONG CONSTANT TRM$_PROMPT = 4 DECLARE LONG CONSTANT TRM$_INISTRNG = 5 DECLARE LONG CONSTANT TRM$_PICSTRNG = 6 DECLARE LONG CONSTANT TRM$_FILLCHR = 7 DECLARE LONG CONSTANT TRM$_INIOFFSET = 8 DECLARE LONG CONSTANT TRM$_ALTECHSTR = 9 DECLARE LONG CONSTANT TRM$_ESCTRMOVR = 10 DECLARE LONG CONSTANT TRM$_LASTITM = 11 ! must remain the last item DECLARE LONG CONSTANT TRM$_RESERVE12 = 12 DECLARE LONG CONSTANT TRM$_RESERVE13 = 13 DECLARE LONG CONSTANT TRM$_RESERVE14 = 14 DECLARE LONG CONSTANT TRM$_RESERVE15 = 15 DECLARE LONG CONSTANT TRM$_RESERVE16 = 16 DECLARE LONG CONSTANT TRM$_RESERVE17 = 17 DECLARE LONG CONSTANT TRM$_RESERVE18 = 18 DECLARE LONG CONSTANT TRM$_RESERVE19 = 19 DECLARE LONG CONSTANT TRM$_RESERVE20 = 20 DECLARE LONG CONSTANT TRM$_RESERVE21 = 21 DECLARE LONG CONSTANT TRM$_RESERVE22 = 22 DECLARE LONG CONSTANT TRM$_RESERVE23 = 23 DECLARE LONG CONSTANT TRM$_RESERVE24 = 24 DECLARE LONG CONSTANT TRM$_RESERVE25 = 25 DECLARE LONG CONSTANT TRM$_RESERVE26 = 26 DECLARE LONG CONSTANT TRM$_RESERVE27 = 27 DECLARE LONG CONSTANT TRM$_RESERVE28 = 28 DECLARE LONG CONSTANT TRM$_RESERVE29 = 29 DECLARE LONG CONSTANT TRM$_RESERVE30 = 30 DECLARE LONG CONSTANT TRM$_RECLINE = 31 ! Reserved for exclusive use by ! Japanese input method; this code MUST ! remain in the invalid item code range ! ! Editmode type codes ! DECLARE LONG CONSTANT TRM$K_EM_DEFAULT = 0 DECLARE LONG CONSTANT TRM$K_EM_RDVERIFY = 1 DECLARE LONG CONSTANT TRM$M_TM_NOECHO = x'00000040' DECLARE LONG CONSTANT TRM$M_TM_TIMED = x'00000080' DECLARE LONG CONSTANT TRM$M_TM_CVTLOW = x'00000100' DECLARE LONG CONSTANT TRM$M_TM_NOFILTR = x'00000200' DECLARE LONG CONSTANT TRM$M_TM_DSABLMBX = x'00000400' DECLARE LONG CONSTANT TRM$M_TM_PURGE = x'00000800' DECLARE LONG CONSTANT TRM$M_TM_TRMNOECHO = x'00001000' DECLARE LONG CONSTANT TRM$M_TM_REFRESH = x'00002000' DECLARE LONG CONSTANT TRM$M_TM_ESCAPE = x'00004000' DECLARE LONG CONSTANT TRM$M_TM_NOEDIT = x'00008000' DECLARE LONG CONSTANT TRM$M_TM_NORECALL = x'00010000' DECLARE LONG CONSTANT TRM$M_TM_R_JUST = x'00020000' DECLARE LONG CONSTANT TRM$M_TM_AUTO_TAB = x'00040000' DECLARE LONG CONSTANT TRM$M_TM_ARROWS = x'00080000' DECLARE LONG CONSTANT TRM$M_TM_TERM_ARROW = x'00100000' DECLARE LONG CONSTANT TRM$M_TM_TERM_DEL = x'00200000' DECLARE LONG CONSTANT TRM$M_TM_TOGGLE = x'00400000' DECLARE LONG CONSTANT TRM$M_TM_OTHERWAY = x'00800000' DECLARE LONG CONSTANT TRM$M_TM_NOCLEAR = x'01000000' DECLARE LONG CONSTANT TRM$M_CV_UPPER = x'00000001' DECLARE LONG CONSTANT TRM$M_CV_LOWER = x'00000002' DECLARE LONG CONSTANT TRM$M_CV_NUMERIC = x'00000004' DECLARE LONG CONSTANT TRM$M_CV_NUMPUNC = x'00000008' DECLARE LONG CONSTANT TRM$M_CV_PRINTABLE = x'00000010' DECLARE LONG CONSTANT TRM$M_CV_ANY = x'00000020' DECLARE LONG CONSTANT TRM$M_ST_FIELD_FULL = x'00000001' DECLARE LONG CONSTANT TRM$M_ST_OTHERWAY = x'00000002' DECLARE LONG CONSTANT TRM$S_TRMDEF = 4 record TRMDEF variant case group TRM$R_TRMDEF_BITS0 ! FUNCTION CODE ! NOECHO ! TIMED ! CONVERT LOWER CASE ! NO FILTER ! DISABLE MAILBOX ! PURGE TYPEAHEAD ! TERMINATORS ARE NOT ECHOED ! Control-R interrupted read n ! TERMINATE READ ON ESCAPE SEQUENCE ! DISABLE ADVANCED EDITING ! Disable the recall feature of advanced editing ! Right justification ! Auto tab field ! enable left ? right arrow keys ! pass arrows as terminator ! pass as terminator ! allow insert/overstrike toggle ! overstrike R-justify or insert L-justify ! don't replace fill with clear after first non-fill LONG FILL_1_bits ! COMMENT ADDED BY SDL - FILL_1_bits contains bits FILL_1 through FILL_40_ end group TRM$R_TRMDEF_BITS0 case group TRM$R_TRMDEF_BITS1 ! picture string mask ! upper case ! lower case ! numeric (0-9) ! numeric punctuation (+ - .) ! printable character ! any character BYTE CV_UPPER_bits ! COMMENT ADDED BY SDL - CV_UPPER_bits contains bits CV_UPPER through FILL_41_ end group TRM$R_TRMDEF_BITS1 case group TRM$R_TRMDEF_BITS2 ! field full condition IOSB+7 contains index to cursor ! left-justify insert OR right-justify overstrike BYTE ST_FIELD_FULL_bits ! COMMENT ADDED BY SDL - ST_FIELD_FULL_bits contains bits ST_FIELD_FULL through & ! FILL_42_ end group TRM$R_TRMDEF_BITS2 end variant end record TRMDEF