delete_between Function (ROM Call 0x2C3)

AMS 1.01 or higher estack.h

void delete_between (ESI ptr1, ESI ptr2);

Deletes a sequence of bytes from the expression stack.

delete_between deletes a sequence of bytes between ptr1 and ptr2 (more precise, starting at ptr1+1 and ending at ptr2) from the expression stack. It does this by moving the memory from ptr2+1 to top_estack downwards (using memmove) and adjusting top_estack. This routine assumes that ptr1 and ptr2 really point to parts of the expression stack and that ptr2 is above ptr1, otherwise the result is unpredictable.


Uses: top_estack, memmove
Used by: compare_complex_magnitudes, delete_expression, did_push_cnvrt_Float_to_integer, index_below_display_expression_aux, map_tail, map_tail_Int, move_between_to_top, NG_graphESI, Parse2DExpr, Parse2DMultiExpr, push_Float_to_nonneg_int, push_internal_simplify, push_parse_text, push_round_Float, push_transpose_aux, cmd_fill, did_push_anti_deriv, did_push_series, push_1st_derivative, push_abs, push_acosh, push_asin, push_asinh, push_atan, push_atanh, push_ceiling, push_colnorm, push_comb, push_comdenom, push_conj, push_cosh, push_cross_product, push_csolve, push_cumsum, push_czeros, push_def_int, push_denominator, push_desolve, push_determinant, push_diag, push_dotproduct, push_eigvc, push_eigvl, push_exp, push_expand, push_extended_prod, push_factor, push_floor, push_fractional_part, push_gcd_numbers, push_im, push_integer_lcm, push_integer_part, push_integer_quotient, push_integer_remainder, push_is_prime, push_left, push_lim, push_list_to_mat, push_ln, push_log10, push_matnorm, push_max, push_max1, push_median, push_mid, push_min, push_min1, push_mod, push_mrowadd, push_nint, push_nsolve, push_nth_derivative, push_numerator, push_part, push_perm, push_phase, push_pttest, push_pxltest, push_rand, push_randpoly, push_re, push_rec_to_angle, push_red_row_ech, push_right, push_rotate, push_round, push_row_echelon, push_rowadd, push_rowdim, push_rownorm, push_rowswap, push_sequence, push_shift, push_sign, push_simult, push_sin2, push_sinh, push_solve, push_stddev, push_str_to_expr, push_submat, push_summation, push_tan, push_tanh, push_variance, push_zeros, did_push_to_polar, push_and, push_dot_exponentiate, push_equals, push_exponentiate, push_factorial, push_greater_than, push_greater_than_or_equals, push_indir_name, push_less_than, push_less_than_or_equals, push_list_plus, push_list_times, push_matrix_product, push_negate, push_not, push_not_equals, push_or, push_product, push_substitute_no_simplify, push_substitute_simplify, push_substitute_using_such_that, push_sum, push_to_cylin, push_to_sphere, add_to_top, are_units_consistent, compare_numbers, de_loop, did_map_aggregate_arg, did_push_approx_inflection_point, EQU_getNameInfo, get_ub, GM_Intersect, GM_Math1, index_if_pushed_binomial_info, index_if_pushed_qquad_info, is_term_improper, push_auto_units_conversion, push_but_factor, push_but_term, push_constant_factors, push_constant_terms, push_dependent_factors, push_dependent_terms, push_div_dif_1c, push_div_dif_1f, push_float_qr_fact, push_format, push_gcd_then_cofactors, push_independent_factors, push_independent_terms, push_lu_fact, push_make_proper, push_mrow_aux, push_nonconstant_factors, push_nonconstant_terms, push_nonnumeric_factors, push_parse_prgm_or_func_text, push_poly_deg_in_var_or_kernel, push_poly_qr, push_reciprocal, push_simplify, push_simplify_statements, push_sq_matrix_to_whole_number, push_standardize, push_symbolic_qr_fact, push_trig, push_user_func, push_zero_partial_column, raise_to_top, replace_top_with_post_simplified, replace_top2_with_and, replace_top2_with_imre, replace_top2_with_or, replace_top2_with_pow, replace_top2_with_prod, replace_top2_with_ratio, replace_top2_with_sum, times_top, tokenize_if_TI_92_or_text, ROM Call 0x468, ROM Call 0x48D, ROM Call 0x4C7, ROM Call 0x4D1, ROM Call 0x4E6