! *** 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 DECLARE LONG CONSTANT TBK$s_tbk_api_param = 152 record tbk_api_param WORD TBK$W_LENGTH ! Input, structure length, by value BYTE TBK$B_TYPE ! Input, must be zero. BYTE TBK$B_VERSION ! Input, version of this structure. LONG TBK$L_RESERVEDA ! Input, must be zero. BASIC$QUADWORD TBK$Q_FAULTING_PC ! Input, pc value, by value BASIC$QUADWORD TBK$Q_FAULTING_FP ! Input, frame pointer, by value BASIC$QUADWORD TBK$PQ_FILENAME_DESC ! Output, string descriptor BASIC$QUADWORD TBK$PQ_LIBRARY_MODULE_DESC ! Output, string descriptor BASIC$QUADWORD TBK$PQ_RECORD_NUMBER ! Output, record number within filename or within text library module BASIC$QUADWORD TBK$PQ_IMAGE_DESC ! Output, string descriptor, image name BASIC$QUADWORD TBK$PQ_MODULE_DESC ! Output, string descriptor, module name BASIC$QUADWORD TBK$PQ_ROUTINE_DESC ! Output, string descriptor, routine name BASIC$QUADWORD TBK$PQ_LISTING_LINENO ! Output, compiler listing line number BASIC$QUADWORD TBK$PQ_REL_PC ! Output, relative pc within module or within image BASIC$QUADWORD TBK$PQ_IMAGE_BASE_ADDR ! Output, base address of the image which contains the pc value object code, ! by reference BASIC$QUADWORD TBK$PQ_MODULE_BASE_ADDR ! Output, base address of the module, which contains the pc value object code, ! by reference ! Input, address of a routine, which provides malloc() functionality BASIC$QUADWORD TBK$PQ_MALLOC_RTN ! Input, address of a routine, which provides free() functionality BASIC$QUADWORD TBK$PQ_FREE_RTN ! Input, address of a quadword, specifying options to be provided by this call BASIC$QUADWORD TBK$PQ_SYMBOLIZE_FLAGS BASIC$QUADWORD TBK$Q_RESERVED0 ! Reserved by HP BASIC$QUADWORD TBK$Q_RESERVED1 ! Reserved by HP BASIC$QUADWORD TBK$Q_RESERVED2 ! Reserved by HP end record tbk_api_param DECLARE LONG CONSTANT tbk$k_length = 152 DECLARE LONG CONSTANT tbk$c_length = 152 DECLARE LONG CONSTANT tbk$k_version = 1 ! ! ************************************************************ ! SYMBOLIZE_FLAGS options ! The following may be applied to the quadword pointed to ! by the SYMBOLIZE_FLAGS field. ! ! EXCEPTION_IS_FAULT values affect line number and ! record number calculation. ! On an API entry, when an exception has occurred in a frame, select the value 1. ! 0=> (Default) Program Adjusts the PC value to correctly determine the line number ! 1=> Program Uses the supplied PC value to determine the line number ! ! ENTRY_TYPE values which affect processing ! 0=> TRACE was entered via the API ENTRY ! 1=> TRACE was entered via the TRACEBACK exception processing ! ! ************************************************************ DECLARE LONG CONSTANT TBK$M_EXCEPTION_IS_FAULT = x'00000001' DECLARE LONG CONSTANT TBK$M_ENTRY_TYPE = x'00000000' DECLARE LONG CONSTANT TBK$s_tbk_symbolize_flags = 8 record tbk_symbolize_flags BYTE EXCEPTION_IS_FAULT_bits ( 8 ) ! COMMENT ADDED BY SDL - EXCEPTION_IS_FAULT_bits contains bits EXCEPTION_IS_FAULT & ! through FILLER2 end record tbk_symbolize_flags