#endif /* not PATH_MAX */
#endif /* not C_PATH_MAX_H */
-\1a
\ No newline at end of file
void print_current_string(void);
#define printcurrentstring_regmem
// void term_input(void);
-void term_input(char *, int);
+void term_input(int, int);
+#define terminput_regmem
void int_error_(integer);
#define int_error(n) int_error_((integer) (n))
void print_rule_dimen_(scaled);
#define print_rule_dimen(d) print_rule_dimen_((scaled) (d))
#define printruledimen_regmem
-void print_glue_(scaled, integer, str_number);
-#define print_glue(d, order, s) print_glue_((scaled) (d), (integer) (order), (str_number) (s))
+void print_glue_(scaled, integer, char *);
+#define print_glue(d, order, s) print_glue_((scaled) (d), (integer) (order), (char *) (s))
#define printglue_regmem
-void print_spec_(integer, str_number);
-#define print_spec(p, s) print_spec_((integer) (p), (str_number) (s))
+void print_spec_(integer, char *);
+#define print_spec(p, s) print_spec_((integer) (p), (char *) (s))
#define printspec_regmem register memory_word *mem=zmem;
void print_fam_and_char_(halfword);
#define print_fam_and_char(p) print_fam_and_char_((halfword) (p))
#define print_string(s) print_string_((unsigned char *) s)
void slow_print_(integer);
#define slow_print(s) slow_print_((integer) (s))
-void print_nl_(const char *);
-#define print_nl(s) print_nl_((const char *) (s))
-void print_esc_(const char *);
-#define print_esc(s) print_esc_((const char *) (s))
+void print_nl_(char *);
+#define print_nl(s) print_nl_((char *) (s))
+void print_esc_(char *);
+#define print_esc(s) print_esc_((char *) (s))
void print_the_digs_(eight_bits);
#define print_the_digs(k) print_the_digs_((eight_bits) (k))
void print_int_(integer);
void print_roman_int_(integer);
#define print_roman_int(n) print_roman_int_((integer) (n))
void print_current_string(void);
-void term_input(char *, int);
+void term_input(int, int);
void int_error_(integer);
#define int_error(n) int_error_((integer) (n))
void normalize_selector(void);
#define print_mark(p) print_mark_((integer) (p))
void print_rule_dimen_(scaled);
#define print_rule_dimen(d) print_rule_dimen_((scaled) (d))
-void print_glue_(scaled, integer, str_number);
-#define print_glue(d, order, s) print_glue_((scaled) (d), (integer) (order), (str_number) (s))
-void print_spec_(integer, str_number);
-#define print_spec(p, s) print_spec_((integer) (p), (str_number) (s))
+void print_glue_(scaled, integer, char *);
+#define print_glue(d, order, s) print_glue_((scaled) (d), (integer) (order), (char *) (s))
+void print_spec_(integer, char *);
+#define print_spec(p, s) print_spec_((integer) (p), (char *) (s))
void print_fam_and_char_(halfword);
#define print_fam_and_char(p) print_fam_and_char_((halfword) (p))
void print_delimiter_(halfword);
#endif
#endif /* _GETOPT_H */
-\1a
\ No newline at end of file
#define MAX_INT_LENGTH 21
\f
/* Return a fresh copy of S1 followed by S2, et al. */
-extern string concat(string s1, string s2);
+extern string concat (string s1, string s2);
extern string concat3 (string, string, string);
extern string concat4 (string, string, string, string);
extern string concat5 (string, string, string, string, string);
#define XRETALLOC(addr, n, t) ((addr) = (t *) xrealloc (addr, (n) * sizeof(t)))
#endif /* not LIB_H */
-\1a
\ No newline at end of file
#ifndef _WINDOWS
#include <conio.h> /* for _getch() */
#endif
-#pragma warning(default:4032) // different type when promoted`
+#pragma warning(default:4032) // different type when promoted
/* Argument handling, etc. */ /* from common.h - setup `main' in texmf.c */
/* Used in tex0.c with wintodos[c-128] */
unsigned char wintodos[128] = {
- 0, 0, 0, 159, 0, 0, 0, 0,
- 94, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 159, 0, 0, 0, 0,
+ 94, 0, 0, 0, 0, 0, 0, 0,
0, 96, 39, 0, 0, 7, 0, 0,
- 126, 0, 0, 0, 0, 0, 0, 0,
- 32, 173, 189, 156, 207, 190, 221, 21,
- 0, 184, 166, 174, 170, 45, 169, 0,
- 248, 241, 253, 252, 0, 230, 20, 250,
- 0, 251, 167, 175, 172, 171, 243, 168,
- 183, 181, 182, 199, 142, 143, 146, 128,
- 212, 144, 210, 211, 222, 214, 215, 216,
- 209, 165, 227, 224, 226, 229, 153, 158,
- 157, 235, 233, 234, 154, 237, 232, 225,
- 133, 160, 131, 198, 132, 134, 145, 135,
- 138, 130, 136, 137, 141, 161, 140, 139,
+ 126, 0, 0, 0, 0, 0, 0, 0,
+ 32, 173, 189, 156, 207, 190, 221, 21,
+ 0, 184, 166, 174, 170, 45, 169, 0,
+ 248, 241, 253, 252, 0, 230, 20, 250,
+ 0, 251, 167, 175, 172, 171, 243, 168,
+ 183, 181, 182, 199, 142, 143, 146, 128,
+ 212, 144, 210, 211, 222, 214, 215, 216,
+ 209, 165, 227, 224, 226, 229, 153, 158,
+ 157, 235, 233, 234, 154, 237, 232, 225,
+ 133, 160, 131, 198, 132, 134, 145, 135,
+ 138, 130, 136, 137, 141, 161, 140, 139,
208, 164, 149, 162, 147, 228, 148, 246,
155, 151, 163, 150, 129, 236, 231, 152
};
sprintf (s, "\n"
" yandytex [-?ivnwdrzpK] [-m=ini_mem] [-e=hyph_size] [-h=trie_size]\n"
" [-x=xchr_file] [-k=key_file] [-o=dvi_dir] [-l=log_dir] [-a=aux_dir]\n"
- " [+format_file] [tex_file]\n"
+ " [+format_file] [tex_file]\n\n"
" -? show this usage summary\n"
" -i start up as iniTeX (create format file)\n"
" -v be verbose (show implementation version number)\n"
#define MAXCHRS 256
#define NOTDEF 127
-void read_xchr_sub (FILE *pinput)
+void read_xchr_sub (FILE * xchr_input)
{
char buffer[PATH_MAX];
int k, from, to, count = 0;
#endif
#ifdef ALLOCATEBUFFER
- while (fgets(buffer, current_buf_size, pinput) != NULL)
+ while (fgets(buffer, current_buf_size, xchr_input) != NULL)
#else
- while (fgets(buffer, sizeof(buffer), pinput) != NULL)
+ while (fgets(buffer, sizeof(buffer), xchr_input) != NULL)
#endif
{
if (*buffer == '%' || *buffer == ';' || *buffer == '\n') continue;
char *replacement[MAXCHRS]; /* pointers to replacement strings */
-void read_repl_sub (FILE *pinput)
+void read_repl_sub (FILE * repl_input)
{
int k, n, m, chrs;
char buffer[PATH_MAX];
for (k = 0; k < MAXCHRS; k++) replacement[k] = NULL;
#endif
- while (fgets(buffer, PATH_MAX, pinput) != NULL) {
+ while (fgets(buffer, PATH_MAX, repl_input) != NULL) {
if (*buffer == '%' || *buffer == ';' || *buffer == '\n') continue;
if ((m = sscanf (buffer, "%d%n %s", &chrs, &n, &charname)) == 0)
continue;
update_statistics ((int) trie_trc, nc, 0);
/* sprintf(log_line, "trie_size %d trie_max %d\n", trie_size, trie_max); */ /* debug */
trie_size = trie_max; /* BUG FIX 98/Jan/5 */
- if (trace_flag) probe_show(); /* 94/Mar/25 */
+ if (trace_flag)
+ probe_show(); /* 94/Mar/25 */
return 0; // success
}
#endif
#ifdef ALLOCATEHYPHEN
bool prime (int); /* test function later in this file */
-int currentprime = 0; /* remember in case reallocated later */
+int current_prime = 0; /* remember in case reallocated later */
/* we don't return an address here, since TWO memory regions allocated */
/* plus, we don't really reallocate, we FLUSH the old information totally */
return -1;
}
if (trace_flag) {
- sprintf(log_line, "Addresses hyph_word %d hyph_list %d\n",
- hyph_word, hyph_list);
+ sprintf(log_line, "Addresses hyph_word %d hyph_list %d\n", hyph_word, hyph_list);
show_line(log_line, 0);
}
/* cannot preserve old contents when hyphen prime is changed */
for (k = 0; k <= hyphen_prime; k++) hyph_list[k]= 0;
#endif
hyph_count = 0; /* or use reset_hyphen() in itex.c */
- if (currentprime != 0) {
+ if (current_prime != 0) {
update_statistics ((int) hyph_word, nw,
- (currentprime + 1) * sizeof(str_number));
+ (current_prime + 1) * sizeof(str_number));
update_statistics ((int) hyph_list, nl,
- (currentprime + 1) * sizeof(halfword));
+ (current_prime + 1) * sizeof(halfword));
}
else {
update_statistics ((int) hyph_word, nw, 0);
update_statistics ((int) hyph_list, nl, 0);
}
- currentprime = hyphen_prime;
+ current_prime = hyphen_prime;
if (trace_flag) probe_show(); /* 94/Mar/25 */
return 0; // success
}
memory_word *realloc_main (int losize, int hisize)
{
int k, minsize;
- int newsize=0; /* to quieten compiler */
- int n=0; /* to quieten compiler */
- memory_word *newmemory = NULL; /* to quieten compiler */
+ int newsize = 0; /* to quieten compiler */
+ int n = 0; /* to quieten compiler */
+ memory_word * newmemory = NULL; /* to quieten compiler */
/* if (losize == 0 && hisize > 0) runawayflag = 1;
else runawayflag = 0; */ /* 94/Jan/22 */
#ifdef ALLOCATEINI
if (is_initex) {
if (trie_taken != NULL) free(trie_taken);
- if (trie_hash != NULL) free(trie_hash);
- if (trie_r != NULL) free(trie_r);
- if (trie_c != NULL) free(trie_c);
- if (trie_o != NULL) free(trie_o);
- if (trie_l != NULL) free(trie_l);
+ if (trie_hash != NULL) free(trie_hash);
+ if (trie_r != NULL) free(trie_r);
+ if (trie_c != NULL) free(trie_c);
+ if (trie_o != NULL) free(trie_o);
+ if (trie_l != NULL) free(trie_l);
trie_taken = NULL;
trie_hash = trie_l = trie_r = NULL;
trie_c = NULL;
}
}
-int testalign (int address, int size, char *name)
+int test_align (int address, int size, char *name)
{
int n;
if (size > 4) n = address % 4;
void check_fixed_align (int flag)
{
- if (testalign ((int) &mem_top, 4, "FIXED ALIGNMENT")) {
+ if (test_align ((int) &mem_top, 4, "FIXED ALIGNMENT")) {
show_line("PLEASE RECOMPILE ME!\n", 1);
}
#ifdef CHECKALIGNMENT
if (!flag) return;
- testalign ((int) &mem_top, 4, "mem_top");
- testalign ((int) &mem_max, 4, "mem_max");
- testalign ((int) &mem_min, 4, "mem_min");
- testalign ((int) &bad, 4, "bad");
- testalign ((int) &trie_size, 4, "trie_size");
- testalign ((int) &xord, sizeof(xord[0]), "xord"); /* no op */
- testalign ((int) &xchr, sizeof(xchr[0]), "xchr"); /* no op */
- testalign ((int) &name_length, 4, "name_length");
- testalign ((int) &first, 4, "first");
- testalign ((int) &last, 4, "last");
- testalign ((int) &max_buf_stack, 4, "max_buf_stack");
- testalign ((int) &pool_ptr, 4, "pool_ptr");
- testalign ((int) &str_ptr, 4, "str_ptr");
- testalign ((int) &init_pool_ptr, 4, "init_pool_ptr");
- testalign ((int) &init_str_ptr, 4, "init_str_ptr");
- testalign ((int) &log_file, 4, "log_file");
- testalign ((int) &tally, 4, "tally");
- testalign ((int) &term_offset, 4, "term_offset");
- testalign ((int) &file_offset, 4, "file_offset");
- testalign ((int) &trick_count, 4, "trick_count");
- testalign ((int) &first_count, 4, "first_count");
- testalign ((int) &deletions_allowed, 4, "deletions_allowed");
- testalign ((int) &set_box_allowed, 4, "set_box_allowed");
- testalign ((char *) &help_line, sizeof(help_line[0]), "help_line");
- testalign ((int) &use_err_help, 4, "use_err_help");
- testalign ((int) &interrupt, 4, "interrupt");
- testalign ((int) &OK_to_interrupt, 4, "OK_to_interrupt");
- testalign ((int) &arith_error, 4, "arith_error");
- testalign ((int) &tex_remainder, 4, "tex_remainder");
- testalign ((int) &temp_ptr, 4, "temp_ptr");
- testalign ((int) &lo_mem_max, 4, "lo_mem_max");
- testalign ((int) &hi_mem_min, 4, "hi_mem_min");
- testalign ((int) &var_used, 4, "var_used");
- testalign ((int) &dyn_used, 4, "dyn_used");
- testalign ((int) &avail, 4, "avail");
- testalign ((int) &mem_end, 4, "mem_end");
- testalign ((int) &mem_start, 4, "mem_start");
- testalign ((int) &rover, 4, "rover");
- testalign ((int) &font_in_short_display, 4, "font_in_short_display");
- testalign ((int) &depth_threshold, 4, "depth_threshold");
- testalign ((int) &breadth_max, 4, "breadth_max");
- testalign ((int) &nest, sizeof(nest[0]), "nest");
+ test_align ((int) &mem_top, 4, "mem_top");
+ test_align ((int) &mem_max, 4, "mem_max");
+ test_align ((int) &mem_min, 4, "mem_min");
+ test_align ((int) &bad, 4, "bad");
+ test_align ((int) &trie_size, 4, "trie_size");
+ test_align ((int) &xord, sizeof(xord[0]), "xord"); /* no op */
+ test_align ((int) &xchr, sizeof(xchr[0]), "xchr"); /* no op */
+ test_align ((int) &name_length, 4, "name_length");
+ test_align ((int) &first, 4, "first");
+ test_align ((int) &last, 4, "last");
+ test_align ((int) &max_buf_stack, 4, "max_buf_stack");
+ test_align ((int) &pool_ptr, 4, "pool_ptr");
+ test_align ((int) &str_ptr, 4, "str_ptr");
+ test_align ((int) &init_pool_ptr, 4, "init_pool_ptr");
+ test_align ((int) &init_str_ptr, 4, "init_str_ptr");
+ test_align ((int) &log_file, 4, "log_file");
+ test_align ((int) &tally, 4, "tally");
+ test_align ((int) &term_offset, 4, "term_offset");
+ test_align ((int) &file_offset, 4, "file_offset");
+ test_align ((int) &trick_count, 4, "trick_count");
+ test_align ((int) &first_count, 4, "first_count");
+ test_align ((int) &deletions_allowed, 4, "deletions_allowed");
+ test_align ((int) &set_box_allowed, 4, "set_box_allowed");
+ test_align ((int) &help_line, sizeof(help_line[0]), "help_line");
+ test_align ((int) &use_err_help, 4, "use_err_help");
+ test_align ((int) &interrupt, 4, "interrupt");
+ test_align ((int) &OK_to_interrupt, 4, "OK_to_interrupt");
+ test_align ((int) &arith_error, 4, "arith_error");
+ test_align ((int) &tex_remainder, 4, "tex_remainder");
+ test_align ((int) &temp_ptr, 4, "temp_ptr");
+ test_align ((int) &lo_mem_max, 4, "lo_mem_max");
+ test_align ((int) &hi_mem_min, 4, "hi_mem_min");
+ test_align ((int) &var_used, 4, "var_used");
+ test_align ((int) &dyn_used, 4, "dyn_used");
+ test_align ((int) &avail, 4, "avail");
+ test_align ((int) &mem_end, 4, "mem_end");
+ test_align ((int) &mem_start, 4, "mem_start");
+ test_align ((int) &rover, 4, "rover");
+ test_align ((int) &font_in_short_display, 4, "font_in_short_display");
+ test_align ((int) &depth_threshold, 4, "depth_threshold");
+ test_align ((int) &breadth_max, 4, "breadth_max");
+ test_align ((int) &nest, sizeof(nest[0]), "nest");
#ifdef ALLOCZEQTB
- testalign ((int) &zeqtb, sizeof(zeqtb[0]), "zeqtb"); /* not any more ? */
-#endif
-/* testalign ((int) &xeq_level, sizeof(xeq_level[0]), "xeq_level"); */
- testalign ((int) &zzzad, sizeof(zzzad[0]), "zzzad");
-/* testalign ((int) &hash, sizeof(hash[0]), "hash"); */
- testalign ((int) &zzzae, sizeof(zzzae[0]), "zzzae");
-
- testalign ((int) &save_stack, sizeof(save_stack[0]), "save_stack");
- testalign ((int) &input_stack, sizeof(input_stack[0]), "input_stack");
- testalign ((int) &input_file, sizeof(input_file[0]), "input_file");
- testalign ((int) &line_stack, sizeof(line_stack[0]), "line_stack");
- testalign ((int) ¶m_stack, sizeof(param_stack[0]), "param_stack");
- testalign ((int) &cur_mark, sizeof(cur_mark[0]), "cur_mark");
- testalign ((int) &pstack, sizeof(pstack[0]), "pstack");
- testalign ((int) &read_file, sizeof(read_file[0]), "read_file");
-
- testalign ((int) &font_check, sizeof(font_check[0]), "font_check");
- testalign ((int) &font_size, sizeof(font_size[0]), "font_size");
- testalign ((int) &font_dsize, sizeof(font_dsize[0]), "font_dsize");
- testalign ((int) &font_params, sizeof(font_params[0]), "font_params");
- testalign ((int) &font_name, sizeof(font_name[0]), "font_name");
- testalign ((int) &font_area, sizeof(font_area[0]), "font_area");
- testalign ((int) &font_bc, sizeof(font_bc[0]), "font_bc");
- testalign ((int) &font_ec, sizeof(font_ec[0]), "font_ec");
- testalign ((int) &font_glue, sizeof(font_glue[0]), "font_glue");
- testalign ((int) &font_used, sizeof(font_used[0]), "font_used");
- testalign ((int) &hyphen_char, sizeof(hyphen_char[0]), "hyphen_char");
- testalign ((int) &skew_char, sizeof(skew_char[0]), "skew_char");
- testalign ((int) &bchar_label, sizeof(bchar_label[0]), "bchar_label");
- testalign ((int) &font_bchar, sizeof(font_bchar[0]), "font_bchar");
- testalign ((int) &font_false_bchar, sizeof(font_false_bchar[0]), "font_false_bchar");
- testalign ((int) &char_base, sizeof(char_base[0]), "char_base");
- testalign ((int) &width_base, sizeof(width_base[0]), "width_base");
- testalign ((int) &height_base, sizeof(height_base[0]), "height_base");
- testalign ((int) &depth_base, sizeof(depth_base[0]), "depth_base");
- testalign ((int) &italic_base, sizeof(italic_base[0]), "italic_base");
- testalign ((int) &lig_kern_base, sizeof(lig_kern_base[0]), "lig_kern_base");
- testalign ((int) &kern_base, sizeof(kern_base[0]), "kern_base");
- testalign ((int) &exten_base, sizeof(exten_base[0]), "exten_base");
- testalign ((int) ¶m_base, sizeof(param_base[0]), "param_base");
+ test_align ((int) &zeqtb, sizeof(zeqtb[0]), "zeqtb"); /* not any more ? */
+#endif
+/* test_align ((int) &xeq_level, sizeof(xeq_level[0]), "xeq_level"); */
+ test_align ((int) &zzzad, sizeof(zzzad[0]), "zzzad");
+/* test_align ((int) &hash, sizeof(hash[0]), "hash"); */
+ test_align ((int) &zzzae, sizeof(zzzae[0]), "zzzae");
+
+ test_align ((int) &save_stack, sizeof(save_stack[0]), "save_stack");
+ test_align ((int) &input_stack, sizeof(input_stack[0]), "input_stack");
+ test_align ((int) &input_file, sizeof(input_file[0]), "input_file");
+ test_align ((int) &line_stack, sizeof(line_stack[0]), "line_stack");
+ test_align ((int) ¶m_stack, sizeof(param_stack[0]), "param_stack");
+ test_align ((int) &cur_mark, sizeof(cur_mark[0]), "cur_mark");
+ test_align ((int) &pstack, sizeof(pstack[0]), "pstack");
+ test_align ((int) &read_file, sizeof(read_file[0]), "read_file");
+
+ test_align ((int) &font_check, sizeof(font_check[0]), "font_check");
+ test_align ((int) &font_size, sizeof(font_size[0]), "font_size");
+ test_align ((int) &font_dsize, sizeof(font_dsize[0]), "font_dsize");
+ test_align ((int) &font_params, sizeof(font_params[0]), "font_params");
+ test_align ((int) &font_name, sizeof(font_name[0]), "font_name");
+ test_align ((int) &font_area, sizeof(font_area[0]), "font_area");
+ test_align ((int) &font_bc, sizeof(font_bc[0]), "font_bc");
+ test_align ((int) &font_ec, sizeof(font_ec[0]), "font_ec");
+ test_align ((int) &font_glue, sizeof(font_glue[0]), "font_glue");
+ test_align ((int) &font_used, sizeof(font_used[0]), "font_used");
+ test_align ((int) &hyphen_char, sizeof(hyphen_char[0]), "hyphen_char");
+ test_align ((int) &skew_char, sizeof(skew_char[0]), "skew_char");
+ test_align ((int) &bchar_label, sizeof(bchar_label[0]), "bchar_label");
+ test_align ((int) &font_bchar, sizeof(font_bchar[0]), "font_bchar");
+ test_align ((int) &font_false_bchar, sizeof(font_false_bchar[0]), "font_false_bchar");
+ test_align ((int) &char_base, sizeof(char_base[0]), "char_base");
+ test_align ((int) &width_base, sizeof(width_base[0]), "width_base");
+ test_align ((int) &height_base, sizeof(height_base[0]), "height_base");
+ test_align ((int) &depth_base, sizeof(depth_base[0]), "depth_base");
+ test_align ((int) &italic_base, sizeof(italic_base[0]), "italic_base");
+ test_align ((int) &lig_kern_base, sizeof(lig_kern_base[0]), "lig_kern_base");
+ test_align ((int) &kern_base, sizeof(kern_base[0]), "kern_base");
+ test_align ((int) &exten_base, sizeof(exten_base[0]), "exten_base");
+ test_align ((int) ¶m_base, sizeof(param_base[0]), "param_base");
#ifdef ALLOCATEDVIBUF
- testalign ((int) &zdvibuf, sizeof(zdvibuf[0]), "zdvibuf"); /* no op */
-#endif
- testalign ((int) &totalstretch, sizeof(totalstretch[0]), "totalstretch");
- testalign ((int) &totalshrink, sizeof(totalshrink[0]), "totalshrink");
- testalign ((int) &active_width, sizeof(active_width[0]), "active_width");
- testalign ((int) &cur_active_width, sizeof(cur_active_width[0]), "cur_active_width");
- testalign ((int) &background, sizeof(background[0]), "background");
- testalign ((int) &break_width, sizeof(break_width[0]), "break_width");
- testalign ((int) &minimal_demerits, sizeof(minimal_demerits[0]), "minimal_demerits");
- testalign ((int) &best_place, sizeof(best_place[0]), "best_place");
- testalign ((int) &best_pl_line, sizeof(best_pl_line[0]), "best_pl_line");
- testalign ((int) &hc, sizeof(hc[0]), "hc");
- testalign ((int) &hu, sizeof(hu[0]), "hu");
- testalign ((int) &hyf, sizeof(hyf[0]), "hyf");
-/* testalign ((int) &x, sizeof(x[0]), "x"); */
-
- testalign ((int) &hyf_distance, sizeof(hyf_distance[0]), "hyf_distance");
- testalign ((int) &hyf_num, sizeof(hyf_num[0]), "hyf_num");
- testalign ((int) &hyf_next, sizeof(hyf_next[0]), "hyf_next");
- testalign ((int) &op_start, sizeof(op_start[0]), "op_start");
-
-/* testalign ((int) &trie_op_hash, sizeof(trie_op_hash[0]), "trie_op_hash"); */
- testalign ((int) &zzzaf, sizeof(zzzaf[0]), "zzzaf");
- testalign ((int) &trie_used, sizeof(trie_used[0]), "trie_used");
-/* testalign ((int) &trie_op_lang, sizeof(trie_op_lang[0]), "trie_op_lang");*/
- testalign ((int) &trie_op_val, sizeof(trie_op_val[0]), "trie_op_val");
-
- testalign ((int) &trie_min, sizeof(trie_min[0]), "trie_min");
- testalign ((int) &page_so_far, sizeof(page_so_far[0]), "page_so_far");
- testalign ((int) &write_file, sizeof(write_file[0]), "write_file");
- testalign ((int) &write_open, sizeof(write_open[0]), "write_open");
+ test_align ((int) &zdvibuf, sizeof(zdvibuf[0]), "zdvibuf"); /* no op */
+#endif
+ test_align ((int) &total_stretch, sizeof(total_stretch[0]), "total_stretch");
+ test_align ((int) &total_shrink, sizeof(total_shrink[0]), "total_shrink");
+ test_align ((int) &active_width, sizeof(active_width[0]), "active_width");
+ test_align ((int) &cur_active_width, sizeof(cur_active_width[0]), "cur_active_width");
+ test_align ((int) &background, sizeof(background[0]), "background");
+ test_align ((int) &break_width, sizeof(break_width[0]), "break_width");
+ test_align ((int) &minimal_demerits, sizeof(minimal_demerits[0]), "minimal_demerits");
+ test_align ((int) &best_place, sizeof(best_place[0]), "best_place");
+ test_align ((int) &best_pl_line, sizeof(best_pl_line[0]), "best_pl_line");
+ test_align ((int) &hc, sizeof(hc[0]), "hc");
+ test_align ((int) &hu, sizeof(hu[0]), "hu");
+ test_align ((int) &hyf, sizeof(hyf[0]), "hyf");
+/* test_align ((int) &x, sizeof(x[0]), "x"); */
+
+ test_align ((int) &hyf_distance, sizeof(hyf_distance[0]), "hyf_distance");
+ test_align ((int) &hyf_num, sizeof(hyf_num[0]), "hyf_num");
+ test_align ((int) &hyf_next, sizeof(hyf_next[0]), "hyf_next");
+ test_align ((int) &op_start, sizeof(op_start[0]), "op_start");
+
+/* test_align ((int) &trie_op_hash, sizeof(trie_op_hash[0]), "trie_op_hash"); */
+ test_align ((int) &zzzaf, sizeof(zzzaf[0]), "zzzaf");
+ test_align ((int) &trie_used, sizeof(trie_used[0]), "trie_used");
+/* test_align ((int) &trie_op_lang, sizeof(trie_op_lang[0]), "trie_op_lang");*/
+ test_align ((int) &trie_op_val, sizeof(trie_op_val[0]), "trie_op_val");
+
+ test_align ((int) &trie_min, sizeof(trie_min[0]), "trie_min");
+ test_align ((int) &page_so_far, sizeof(page_so_far[0]), "page_so_far");
+ test_align ((int) &write_file, sizeof(write_file[0]), "write_file");
+ test_align ((int) &write_open, sizeof(write_open[0]), "write_open");
#endif
}
void check_alloc_align (int flag) {
- if (testalign ((int) eqtb, sizeof(eqtb[0]), "ALLOCATED ALIGNMENT"))
+ if (test_align ((int) eqtb, sizeof(eqtb[0]), "ALLOCATED ALIGNMENT"))
show_line("PLEASE RECOMPILE ME!\n", 1);
#ifdef CHECKALIGNMENT
if (!flag) return;
#ifndef ALLOCZEQTB
- testalign ((int) zeqtb, sizeof(zeqtb[0]), "zeqtb");
+ test_align ((int) zeqtb, sizeof(zeqtb[0]), "zeqtb");
#endif
#ifndef ALLOCATEDVIBUF
- testalign ((int) &zdvibuf, sizeof(zdvibuf[0]), "zdvibuf"); /* no op */
-#endif
- testalign ((int) str_pool, sizeof(str_pool[0]), "str_pool"); /* no op */
- testalign ((int) str_start, sizeof(str_start[0]), "str_start");
- testalign ((int) zmem, sizeof(zmem[0]), "main memory");
- testalign ((int) font_info, sizeof(font_info[0]), "font memory");
- testalign ((int) trie_trl, sizeof(trie_trl[0]), "trie_trl");
- testalign ((int) trie_tro, sizeof(trie_tro[0]), "trie_tro");
- testalign ((int) trie_trc, sizeof(trie_trc[0]), "trie_trc");
- testalign ((int) hyph_word, sizeof(hyph_word[0]), "hyph_word");
- testalign ((int) hyph_list, sizeof(hyph_list[0]), "hyph_list");
-/* testalign ((int) trie_c, sizeof(trie_c[0]), "trie_c"); *//* no op */
- testalign ((int) trie_o, sizeof(trie_o[0]), "trie_o");
- testalign ((int) trie_l, sizeof(trie_l[0]), "trie_l");
- testalign ((int) trie_r, sizeof(trie_r[0]), "trie_r");
- testalign ((int) trie_hash, sizeof(trie_hash[0]), "trie_hash");
- testalign ((int) trie_taken, sizeof(trie_taken[0]), "trie_taken");
+ test_align ((int) &zdvibuf, sizeof(zdvibuf[0]), "zdvibuf"); /* no op */
+#endif
+ test_align ((int) str_pool, sizeof(str_pool[0]), "str_pool"); /* no op */
+ test_align ((int) str_start, sizeof(str_start[0]), "str_start");
+ test_align ((int) zmem, sizeof(zmem[0]), "main memory");
+ test_align ((int) font_info, sizeof(font_info[0]), "font memory");
+ test_align ((int) trie_trl, sizeof(trie_trl[0]), "trie_trl");
+ test_align ((int) trie_tro, sizeof(trie_tro[0]), "trie_tro");
+ test_align ((int) trie_trc, sizeof(trie_trc[0]), "trie_trc");
+ test_align ((int) hyph_word, sizeof(hyph_word[0]), "hyph_word");
+ test_align ((int) hyph_list, sizeof(hyph_list[0]), "hyph_list");
+/* test_align ((int) trie_c, sizeof(trie_c[0]), "trie_c"); *//* no op */
+ test_align ((int) trie_o, sizeof(trie_o[0]), "trie_o");
+ test_align ((int) trie_l, sizeof(trie_l[0]), "trie_l");
+ test_align ((int) trie_r, sizeof(trie_r[0]), "trie_r");
+ test_align ((int) trie_hash, sizeof(trie_hash[0]), "trie_hash");
+ test_align ((int) trie_taken, sizeof(trie_taken[0]), "trie_taken");
#endif
}
show_line(log_line, 0);
sprintf(log_line, "eqtb %d hash %d ", zeqtb, zzzae);
show_line(log_line, 0);
- sprintf(log_line, "dvi_buf %d xchr %d xord %d nest %d\n",
- zdvibuf, xchr, xord, nest);
+ sprintf(log_line, "dvi_buf %d xchr %d xord %d nest %d\n", zdvibuf, xchr, xord, nest);
show_line(log_line, 0);
sprintf(log_line, "save_stack %d input_stack %d line_stack %d param_stack %d\n",
save_stack, input_stack, line_stack, param_stack);
/* *** *** *** *** *** *** *** NEW APPROACH TO `ENV VARS' *** *** *** *** */
-/* grab `env var' from `dviwindo.ini' - or from DOS environment 94/May/19 */
-/* controlled by USEDVIWINDOINI environment variable 94/June/19 */
-
-bool usedviwindo = true; /* use [Environment] section in `dviwindo.ini' */
-bool backwardflag = false; /* don't cripple all advanced features */
-bool shorten_file_name = false; /* don't shorten file names to 8+3 for DOS */
-char *inifilename = "dviwindo.ini"; /* name of ini file we look for */
-char *dviwindo = ""; /* full file name for dviwindo.ini with path */
-char *envsection = "[Environment]"; /* Env var section in `dviwindo.ini' */
-char *wndsection = "[Window]"; /* Window section in `dviwindo.ini' */
-char *workdirect = "WorkingDirectory"; /* key in [Window] section */
-bool usesourcedirectory = true; /* use source file directory as local */
- /* when WorkingDirectory is set */
-bool workingdirectory = false; /* if working directory set in ini */
+/* grab `env var' from `dviwindo.ini' - or from DOS environment 94/May/19 */
+/* controlled by USEDVIWINDOINI environment variable 94/June/19 */
+
+bool usedviwindo = true; /* use [Environment] section in `dviwindo.ini' */
+bool backwardflag = false; /* don't cripple all advanced features */
+bool shorten_file_name = false; /* don't shorten file names to 8+3 for DOS */
+char *inifilename = "dviwindo.ini"; /* name of ini file we look for */
+char *dviwindo = ""; /* full file name for dviwindo.ini with path */
+char *envsection = "[Environment]"; /* Env var section in `dviwindo.ini' */
+char *wndsection = "[Window]"; /* Window section in `dviwindo.ini' */
+char *workdirect = "WorkingDirectory"; /* key in [Window] section */
+bool usesourcedirectory = true; /* use source file directory as local when WorkingDirectory is set */
+bool workingdirectory = false; /* if working directory set in ini */
/* set up full file name for dviwindo.ini and check for [Environment] */
bool setupdviwindo (void)
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
-void flush_trailing_slash (char *directory){
+void flush_trailing_slash (char *directory)
+{
char *s;
/* flush trailing \ or / in directory, if any 1993/Dec/12 */
if (strcmp(directory, "") != 0) {
/* ........ */
-int nohandler=0; /* experiment to avoid Ctrl-C interrupt handler */
+int nohandler = 0; /* experiment to avoid Ctrl-C interrupt handler */
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
int analyze_flag (int c, char *optarg)
{
switch (c) {
- case 'v': want_version = true;
- verbose_flag = true;
- break;
- case 'i': is_initex = true;
- break;
- case 'Q': interaction = 0; /* quiet mode */
- break;
- case 'R': interaction = 1; /* run mode */
- break;
- case 'S': interaction = 2; /* scroll mode */
- break;
- case 'T': interaction = 3; /* tex mode */
- break;
- case 'K': backwardflag = true; /* 94/Jun/15 */
- knuthify(); /* revert to `standard' Knuth TeX */
- break;
- case 'L': c_style_flag = true; /* C style error msg 94/Mar/21 */
- break;
- case 'Z': show_tfm_flag = true; /* show TFM in log file 94/Jun/21 */
- break;
- case 'c': current_tfm = false; /* not look current dir for TFM */
- break;
- case 'C': current_flag = false; /* not look current dir for files */
- break;
- case 'M': show_missing = false; /* do not show missing 94/June/10 */
- break;
- case 'd': deslash = false; /* flipped 93/Nov/18 */
- /* pseudo_tilde = 0; */ /* new 95/Sep/26 */
- break;
- case 'p': allow_patterns = true; /* 93/Nov/26 */
- /* reset_exceptions = true; */ /* 93/Dec/23 */
- break;
+ case 'v':
+ want_version = true;
+ verbose_flag = true;
+ break;
+ case 'i':
+ is_initex = true;
+ break;
+ case 'Q':
+ interaction = batch_mode; /* quiet mode */
+ break;
+ case 'R':
+ interaction = nonstop_mode; /* run mode */
+ break;
+ case 'S':
+ interaction = scroll_mode; /* scroll mode */
+ break;
+ case 'T':
+ interaction = error_stop_mode; /* tex mode */
+ break;
+ case 'K':
+ backwardflag = true; /* 94/Jun/15 */
+ knuthify(); /* revert to `standard' Knuth TeX */
+ break;
+ case 'L':
+ c_style_flag = true; /* C style error msg 94/Mar/21 */
+ break;
+ case 'Z':
+ show_tfm_flag = true; /* show TFM in log file 94/Jun/21 */
+ break;
+ case 'c':
+ current_tfm = false; /* not look current dir for TFM */
+ break;
+ case 'C':
+ current_flag = false; /* not look current dir for files */
+ break;
+ case 'M':
+ show_missing = false; /* do not show missing 94/June/10 */
+ break;
+ case 'd':
+ deslash = false; /* flipped 93/Nov/18 */
+ /* pseudo_tilde = 0; */ /* new 95/Sep/26 */
+ break;
+ case 'p':
+ allow_patterns = true; /* 93/Nov/26 */
+ /* reset_exceptions = true; */ /* 93/Dec/23 */
+ break;
/* case 'w': show_in_hex = false; */ /* 94/Jan/26 */
- case 'w': show_in_hex = true; /* flipped 00/Jun/18 */
- break;
- case 'j': show_in_dos = true; /* 96/Jan/26 */
- break;
- case 'n': restrict_to_ascii = true; /* 0 - 127 1994/Jan/21 */
- break;
- case '6': workingdirectory = true; /* use source dir 98/Sep/29 */
- break;
- case '7': usesourcedirectory = false; /* use working dir 98/Sep/29 */
- break;
- case 'f': show_fonts_used = false; /* 97/Dec/24 */
- break;
- case '8': shorten_file_name = true; /* 95/Feb/20 */
- break;
- case '9': show_cs_names = true; /* 98/Mar/31 */
- break;
- case '4': ignore_frozen = true; /* 98/Oct/5 */
- break;
- case '5': font_dimen_zero = false; /* 98/Oct/5 */
- break;
- case 'F': show_texinput_flag = false; /* 98/Jan/28 */
- break;
+ case 'w':
+ show_in_hex = true; /* flipped 00/Jun/18 */
+ break;
+ case 'j':
+ show_in_dos = true; /* 96/Jan/26 */
+ break;
+ case 'n':
+ restrict_to_ascii = true; /* 0 - 127 1994/Jan/21 */
+ break;
+ case '6':
+ workingdirectory = true; /* use source dir 98/Sep/29 */
+ break;
+ case '7':
+ usesourcedirectory = false; /* use working dir 98/Sep/29 */
+ break;
+ case 'f':
+ show_fonts_used = false; /* 97/Dec/24 */
+ break;
+ case '8':
+ shorten_file_name = true; /* 95/Feb/20 */
+ break;
+ case '9':
+ show_cs_names = true; /* 98/Mar/31 */
+ break;
+ case '4':
+ ignore_frozen = true; /* 98/Oct/5 */
+ break;
+ case '5':
+ font_dimen_zero = false; /* 98/Oct/5 */
+ break;
+ case 'F':
+ show_texinput_flag = false; /* 98/Jan/28 */
+ break;
/* case 'X': truncate_long_lines = false; */ /* 98/Feb/2 */
/* break; */
- case 'W': usedviwindo = false; /* 94/May/19 */
- break;
- case 'J': show_line_break_stats = false; /* 96/Feb/8 */
- break;
- case 'O': show_fmt_flag = false; /* 94/Jun/21 */
- break;
- case 'I': format_specific = false; /* 95/Jan/7 */
- break;
- case '3': encoding_specific = false; /* 98/Oct/5 */
- break;
- case '2': suppress_f_ligs = true; /* 99/Jan/5 f-lig */
- break;
+ case 'W':
+ usedviwindo = false; /* 94/May/19 */
+ break;
+ case 'J':
+ show_line_break_stats = false; /* 96/Feb/8 */
+ break;
+ case 'O':
+ show_fmt_flag = false; /* 94/Jun/21 */
+ break;
+ case 'I':
+ format_specific = false; /* 95/Jan/7 */
+ break;
+ case '3':
+ encoding_specific = false; /* 98/Oct/5 */
+ break;
+ case '2':
+ suppress_f_ligs = true; /* 99/Jan/5 f-lig */
+ break;
/* following are pretty obscure */
/* case 'y': cache_file_flag = false; */ /* 96/Nov/16 */
/* break; */
/* break; */
/* case 'z': trimeof = false; */ /* 93/Nov/24 */
/* break; */
- case 'z': full_file_name_flag = false; // 00 Jun 18
- break;
- case 'X': save_strings_flag = false; // 00 Aug 15
- break;
+ case 'z':
+ full_file_name_flag = false; // 00 Jun 18
+ break;
+ case 'X':
+ save_strings_flag = false; // 00 Aug 15
+ break;
/* following are unannounced options */ /* some may be recycled ... */
- case 't': trace_flag = true;
- break;
- case 'q': quitflag++; /* 93/Dec/16 */
- break;
+ case 't':
+ trace_flag = true;
+ break;
+ case 'q':
+ quitflag++; /* 93/Dec/16 */
+ break;
/* The following are really obscure and should not be advertized */
- case 's': show_current = false; /* tex8 93/Dec/14 */
- break;
- case 'N': show_numeric = false; /* 93/Dec/21 */
- break;
- case 'A': civilize_flag = false; /* 93/Dec/16 */
- break;
- case 'B': open_trace_flag = true; /* openinou 1994/Jan/8 */
- break;
- case 'Y': reorder_arg_flag = false; /* local */
- break;
- case 'b': test_dir_access = false; /* 94/Feb/10 */
- break;
- case 'D': dir_method = false; /* 94/Feb/10 */
- break;
- case 'G': file_method = false; /* 94/Feb/13 */
- break;
+ case 's':
+ show_current = false; /* tex8 93/Dec/14 */
+ break;
+ case 'N':
+ show_numeric = false; /* 93/Dec/21 */
+ break;
+ case 'A':
+ civilize_flag = false; /* 93/Dec/16 */
+ break;
+ case 'B':
+ open_trace_flag = true; /* openinou 1994/Jan/8 */
+ break;
+ case 'Y':
+ reorder_arg_flag = false; /* local */
+ break;
+ case 'b':
+ test_dir_access = false; /* 94/Feb/10 */
+ break;
+ case 'D':
+ dir_method = false; /* 94/Feb/10 */
+ break;
+ case 'G':
+ file_method = false; /* 94/Feb/13 */
+ break;
// case 'V': share_flag = _SH_DENYNO; break; /* 0x40 - deny none mode */
/* case 'X': nohandler++; break; */
/* case 'f': waitflush = false; break; */
/* case 'F': floating = true; break; */
/* *********** following command line options take arguments ************** */
- case 'm': if (optarg == 0) mem_initex = mem_top; else mem_initex = atoi(optarg) * 1024; /* 93 Dec/1 */
- if (mem_initex == 0) complainarg(c, optarg);
- mem_spec_flag = 1;
- break;
+ case 'm':
+ if (optarg == 0)
+ mem_initex = mem_top;
+ else
+ mem_initex = atoi(optarg) * 1024; /* 93 Dec/1 */
+ if (mem_initex == 0)
+ complainarg(c, optarg);
+ mem_spec_flag = 1;
+ break;
#ifdef VARIABLETRIESIZE
- case 'h': if (optarg == 0) trie_size = default_trie_size; else trie_size = atoi(optarg); /* 93 Dec/1 */
- if (trie_size == 0) complainarg(c, optarg);
- break;
+ case 'h':
+ if (optarg == 0)
+ trie_size = default_trie_size;
+ else
+ trie_size = atoi(optarg); /* 93 Dec/1 */
+ if (trie_size == 0)
+ complainarg(c, optarg);
+ break;
#endif
#ifdef ALLOCATEHYPHEN
- case 'e': if (optarg == 0) new_hyphen_prime = hyphen_prime * 2; else new_hyphen_prime = atoi(optarg); /* 93/Nov/26 */
- if (new_hyphen_prime == 0) complainarg(c, optarg);
- break;
+ case 'e':
+ if (optarg == 0)
+ new_hyphen_prime = hyphen_prime * 2;
+ else
+ new_hyphen_prime = atoi(optarg); /* 93/Nov/26 */
+ if (new_hyphen_prime == 0)
+ complainarg(c, optarg);
+ break;
#endif
#ifdef ALLOCATEDVIBUF
- case 'u': if (optarg == 0) dvi_buf_size = default_dvi_buf_size; else dvi_buf_size = atoi(optarg); /* 94/Mar/24 */
- if (dvi_buf_size == 0) complainarg(c, optarg);
- break;
-#endif
- case 'g': if (optarg == 0) percent_grow = 62; else percent_grow = atoi(optarg); /* 93/Dec/11 */
- if (percent_grow == 0) complainarg(c, optarg);
- break;
- case 'U': if (optarg == 0) pseudo_tilde = 0; else pseudo_tilde = atoi(optarg); /* 95/Sep/26 */
- if (pseudo_tilde > 255) pseudo_tilde = 255; else if (pseudo_tilde < 128) pseudo_tilde = 128;
- break;
+ case 'u':
+ if (optarg == 0)
+ dvi_buf_size = default_dvi_buf_size;
+ else
+ dvi_buf_size = atoi(optarg); /* 94/Mar/24 */
+ if (dvi_buf_size == 0)
+ complainarg(c, optarg);
+ break;
+#endif
+ case 'g':
+ if (optarg == 0)
+ percent_grow = 62;
+ else
+ percent_grow = atoi(optarg); /* 93/Dec/11 */
+ if (percent_grow == 0)
+ complainarg(c, optarg);
+ break;
+ case 'U':
+ if (optarg == 0)
+ pseudo_tilde = 0;
+ else
+ pseudo_tilde = atoi(optarg); /* 95/Sep/26 */
+ if (pseudo_tilde > 255)
+ pseudo_tilde = 255;
+ else if (pseudo_tilde < 128)
+ pseudo_tilde = 128;
+ break;
/* case 'H': if (optarg == 0) heapthreshold = 1024; else heapthreshold = atoi(optarg);
* if (heapthreshold == 0) complainarg(c, optarg); else heap_flag = 1;
* break; */
- case 'H': if (optarg == 0) tab_step = 8; else tab_step = atoi(optarg); /* 94/July/3 */
- if (tab_step == 0) complainarg(c, optarg);
- break;
- case 'x': if (optarg == 0) xchrfile=xstrdup("xchr.map"); else xchrfile = xstrdup(optarg);
- if (xchrfile == NULL || *xchrfile == '\0') complainarg(c, optarg);
- break;
- case 'k': if (optarg == 0) replfile =xstrdup("repl.key"); else replfile = xstrdup(optarg);
- if (replfile == NULL || *replfile == '\0')
- complainarg(c, optarg);
- break;
+ case 'H':
+ if (optarg == 0)
+ tab_step = 8;
+ else
+ tab_step = atoi(optarg); /* 94/July/3 */
+ if (tab_step == 0)
+ complainarg(c, optarg);
+ break;
+ case 'x':
+ if (optarg == 0)
+ xchrfile = xstrdup("xchr.map");
+ else
+ xchrfile = xstrdup(optarg);
+ if (xchrfile == NULL || *xchrfile == '\0')
+ complainarg(c, optarg);
+ break;
+ case 'k':
+ if (optarg == 0)
+ replfile = xstrdup("repl.key");
+ else
+ replfile = xstrdup(optarg);
+ if (replfile == NULL || *replfile == '\0')
+ complainarg(c, optarg);
+ break;
/* more obscure stuff - ppssibly recycle */
- case 'P': if (optarg == 0) default_rule = 26214; /* 95/Oct/9 */
- else default_rule = atoi(optarg); /* 95/Oct/9 */
- if (default_rule == 0) complainarg(c, optarg);
- break;
- case 'E': if (optarg != 0) putenv(optarg); else complainarg(c, optarg);
- break;
- case 'o': if (optarg == 0) dvi_directory = ""; else dvi_directory = xstrdup(optarg);
- if (strcmp(dvi_directory, "") == 0) complainarg(c, optarg);
- break;
- case 'l': if (optarg == 0) log_directory = ""; else log_directory = xstrdup(optarg);
- if (strcmp(log_directory, "") == 0) complainarg(c, optarg);
- break;
- case 'a': if (optarg == 0) aux_directory = ""; else aux_directory = xstrdup(optarg);
- if (strcmp(aux_directory, "") == 0) complainarg(c, optarg);
- break;
+ case 'P':
+ if (optarg == 0)
+ default_rule = 26214; /* 95/Oct/9 */
+ else
+ default_rule = atoi(optarg); /* 95/Oct/9 */
+ if (default_rule == 0)
+ complainarg(c, optarg);
+ break;
+ case 'E':
+ if (optarg != 0)
+ putenv(optarg);
+ else
+ complainarg(c, optarg);
+ break;
+ case 'o':
+ if (optarg == 0)
+ dvi_directory = "";
+ else
+ dvi_directory = xstrdup(optarg);
+ if (strcmp(dvi_directory, "") == 0)
+ complainarg(c, optarg);
+ break;
+ case 'l':
+ if (optarg == 0)
+ log_directory = "";
+ else
+ log_directory = xstrdup(optarg);
+ if (strcmp(log_directory, "") == 0)
+ complainarg(c, optarg);
+ break;
+ case 'a':
+ if (optarg == 0)
+ aux_directory = "";
+ else
+ aux_directory = xstrdup(optarg);
+ if (strcmp(aux_directory, "") == 0)
+ complainarg(c, optarg);
+ break;
case '?':
- default : show_use = true;
- return -1; // failed to recognize
- break;
+ default:
+ show_use = true;
+ return -1; // failed to recognize
+ break;
}
return 0;
}
void yy_extension (char *fname, char *ext)
{
char *s, *t;
- if ((s = strrchr(fname, '.')) == NULL ||
+ if ((s = strrchr(fname, '.')) == NULL ||
((t = strrchr(fname, '\\')) != NULL && s < t)) {
- strcat(fname, ".");
+ strcat(fname, ".");
strcat(fname, ext);
}
}
void strip_name (char *pathname)
{
char *s;
- if ((s=strrchr(pathname, '\\')) != NULL);
- else if ((s=strrchr(pathname, '/')) != NULL);
- else if ((s=strrchr(pathname, ':')) != NULL) s++;
+ if ((s = strrchr(pathname, '\\')) != NULL);
+ else if ((s = strrchr(pathname, '/')) != NULL);
+ else if ((s = strrchr(pathname, ':')) != NULL) s++;
else s = pathname;
*s = '\0';
}
/* WARNING: if adding flags, change also `allowedargs' and `takeargs' !!!! */
while ((c = getopt(ac, av, allowedargs)) != EOF) {
if (optarg != 0 && *optarg == '=')
- optargnew = optarg+1;
+ optargnew = optarg+1;
else
- optargnew = optarg;
+ optargnew = optarg;
analyze_flag (c, optargnew);
}
if (show_use || quitflag == 3) {
}
#ifdef IGNORED
-void uppercase (char *s) {
+void uppercase (char *s)
+{
int c;
while ((c = *s) != '\0') {
/* if (islower(c)) *s = toupper (*s); */
is_initex = trace_flag = deslash = non_ascii = false; */
is_initex = false; /* check for dumping format file */
allow_patterns = false; /* using \pattern after format file loaded */
- reset_exceptions = false;
+ reset_exceptions = false;
non_ascii = false;
key_replace = false;
want_version = false;
errout = stdout; /* as opposed to stderr say --- used ??? */
abort_flag = 0; // not yet hooked up ???
err_level = 0; // not yet hooked up ???
-
- new_hyphen_prime = 0;
+ new_hyphen_prime = 0;
#ifdef VARIABLETRIESIZE
/* trie_size = default_trie_size; */
trie_size = 0;
/* if we aren't including current directory in any directory lists */
/* then makes no sense to avoid them separately for TFM files ... */
/* (that is, the ./ is already omitted from the dir list in that case */
- if (!current_flag && !current_tfm) current_tfm = true; /* 94/Jan/24 */
+ if (!current_flag && !current_tfm)
+ current_tfm = true; /* 94/Jan/24 */
return 0; // success
}
/* E sets environment variable ? */
void initial_memory (void)
-{ /* set initial memory allocations */
- if (mem_extra_high < 0) mem_extra_high = 0;
- if (mem_extra_low < 0) mem_extra_low = 0;
- if (mem_initex < 0) mem_initex = 0;
- if (is_initex) {
+{
+ /* set initial memory allocations */
+ if (mem_extra_high < 0) mem_extra_high = 0;
+ if (mem_extra_low < 0) mem_extra_low = 0;
+ if (mem_initex < 0) mem_initex = 0;
+ if (is_initex) {
#if defined(ALLOCATEHIGH) || defined(ALLOCATELOW)
- if (mem_extra_high != 0 || mem_extra_low != 0) {
- show_line("ERROR: Cannot extend main memory in iniTeX\n", 1);
- mem_extra_high = 0; mem_extra_low = 0;
- }
- #endif
+ if (mem_extra_high != 0 || mem_extra_low != 0) {
+ show_line("ERROR: Cannot extend main memory in iniTeX\n", 1);
+ mem_extra_high = 0; mem_extra_low = 0;
}
- else {
- if (mem_initex != 0) {
- show_line("ERROR: Can only set initial main memory size in iniTeX\n", 1);
- mem_initex = 0;
- }
- if (trie_size != 0) {
- show_line("ERROR: Need only set hyphenation trie size in iniTeX\n", 1);
-/* trie_size = 0; */
- }
+#endif
+ } else {
+ if (mem_initex != 0) {
+ show_line("ERROR: Can only set initial main memory size in iniTeX\n", 1);
+ mem_initex = 0;
+ }
+ if (trie_size != 0) {
+ show_line("ERROR: Need only set hyphenation trie size in iniTeX\n", 1);
+/* trie_size = 0; */
}
- if (mem_initex == 0) mem_initex = default_mem_top;
- if (trie_size == 0) trie_size = default_trie_size;
+ }
+ if (mem_initex == 0) mem_initex = default_mem_top;
+ if (trie_size == 0) trie_size = default_trie_size;
/* Just in case user mistakenly specified words instead of kilo words */
- if (mem_extra_high > 10000L * 1024L) mem_extra_high = mem_extra_high / 1024;
- if (mem_extra_low > 10000L * 1024L) mem_extra_low = mem_extra_low / 1024;
- if (mem_initex > 10000L * 1024L) mem_initex = mem_initex / 1024;
+ if (mem_extra_high > 10000L * 1024L) mem_extra_high = mem_extra_high / 1024;
+ if (mem_extra_low > 10000L * 1024L) mem_extra_low = mem_extra_low / 1024;
+ if (mem_initex > 10000L * 1024L) mem_initex = mem_initex / 1024;
#ifdef ALLOCATEHIGH /* not used anymore */
- if (mem_extra_high > 2048L * 1024L) { /* extend SW area by 16 mega byte! */
- show_line(
- "WARNING: There may be no benefit to asking for so much memory\n", 0);
- mem_extra_high = 2048 * 1024; /* limit to SW to 4 x VLR */
- }
+ if (mem_extra_high > 2048L * 1024L) { /* extend SW area by 16 mega byte! */
+ show_line("WARNING: There may be no benefit to asking for so much memory\n", 0);
+ mem_extra_high = 2048 * 1024; /* limit to SW to 4 x VLR */
+ }
#endif
#ifdef ALLOCATELOW /* not used anymore */
- if (mem_extra_low > 2048L * 1024L) { /* extend VL area by 16 mega byte! */
- show_line(
- "WARNING: There may be no benefit to asking for so much memory\n", 0);
- mem_extra_low = 2048 * 1024; /* limit VLR to 4 x SW */
- }
+ if (mem_extra_low > 2048L * 1024L) { /* extend VL area by 16 mega byte! */
+ show_line("WARNING: There may be no benefit to asking for so much memory\n", 0);
+ mem_extra_low = 2048 * 1024; /* limit VLR to 4 x SW */
+ }
#endif
- if (mem_initex > 2048L * 1024L) { /* extend main memory by 16 mega byte! */
- show_line(
- "WARNING: There may be no benefit to asking for so much memory\n", 0);
-/* mem_initex = 2048 * 1024; */
- }
+ if (mem_initex > 2048L * 1024L) { /* extend main memory by 16 mega byte! */
+ show_line("WARNING: There may be no benefit to asking for so much memory\n", 0);
+/* mem_initex = 2048 * 1024; */
+ }
#ifdef ALLOCATEDVIBUF
- if (dvi_buf_size == 0) dvi_buf_size = default_dvi_buf_size;
- /* if less than 1024 assume user specified kilo-bytes, not bytes */
- if (dvi_buf_size < 1024) dvi_buf_size = dvi_buf_size * 1024;
- if (dvi_buf_size % 8 != 0) /* check multiple of eight */
- dvi_buf_size = (dvi_buf_size / 8 + 1) * 8;
+ if (dvi_buf_size == 0) dvi_buf_size = default_dvi_buf_size;
+/* if less than 1024 assume user specified kilo-bytes, not bytes */
+ if (dvi_buf_size < 1024) dvi_buf_size = dvi_buf_size * 1024;
+ if (dvi_buf_size % 8 != 0) /* check multiple of eight */
+ dvi_buf_size = (dvi_buf_size / 8 + 1) * 8;
#endif
- if (new_hyphen_prime < 0) new_hyphen_prime = 0;
- if (new_hyphen_prime > 0) {
- if (! is_initex)
- show_line("ERROR: Can only set hyphen prime in iniTeX\n", 1);
- else {
- if (new_hyphen_prime % 2 == 0) new_hyphen_prime++;
- while (!prime(new_hyphen_prime)) new_hyphen_prime = new_hyphen_prime+2;
- if (trace_flag) {
- sprintf(log_line, "Using %d as hyphen prime\n", new_hyphen_prime);
- show_line(log_line, 0);
- }
+ if (new_hyphen_prime < 0) new_hyphen_prime = 0;
+ if (new_hyphen_prime > 0) {
+ if (! is_initex)
+ show_line("ERROR: Can only set hyphen prime in iniTeX\n", 1);
+ else {
+ if (new_hyphen_prime % 2 == 0) new_hyphen_prime++;
+ while (!prime(new_hyphen_prime)) new_hyphen_prime = new_hyphen_prime+2;
+ if (trace_flag) {
+ sprintf(log_line, "Using %d as hyphen prime\n", new_hyphen_prime);
+ show_line(log_line, 0);
}
}
-
- if (percent_grow > 100) percent_grow = percent_grow - 100;
- if (percent_grow > 100) percent_grow = 100; /* upper limit - double */
- if (percent_grow < 10) percent_grow = 10; /* lower limit - 10% */
+ }
+ if (percent_grow > 100) percent_grow = percent_grow - 100;
+ if (percent_grow > 100) percent_grow = 100; /* upper limit - double */
+ if (percent_grow < 10) percent_grow = 10; /* lower limit - 10% */
}
/**********************************************************************/
/* deslash TeX source file (and format, if format specified) */
/* and check args to see whether format was specified */
-
format_spec = 0;
/* NOTE: assuming that command line arguments are in writable memory ! */
/* if (trace_flag || debug_flag)
buffer = realloc_buffer (initial_buf_size);
/* sprintf(log_line, "buffer %x, current_buf_size %d\n", buffer, current_buf_size); */
#endif
- hyph_list = NULL; hyph_word = NULL;
+ hyph_list = NULL; hyph_word = NULL;
trie_taken = NULL; trie_hash = NULL;
- trie_r = NULL; trie_c = NULL; trie_o = NULL; trie_l = NULL;
- trie_trc = NULL; trie_tro = NULL; trie_trl = NULL;
+ trie_r = NULL;
+ trie_c = NULL;
+ trie_o = NULL;
+ trie_l = NULL;
+ trie_trc = NULL;
+ trie_tro = NULL;
+ trie_trl = NULL;
log_opened = false; /* so can tell whether opened */
interaction = -1; /* default state => 3 */
check_fixed_align(trace_flag); /* sanity check 1994/Jan/8 */
- format_file = NULL; /* to be set in openinou.c 94/Jun/21 */
- string_file = NULL; /* to be set in openinou.c 96/Jan/15 */
- source_direct = NULL; /* to be set in openinou.c 98/Sep/29 */
+ format_file = NULL; /* to be set in openinou.c 94/Jun/21 */
+ string_file = NULL; /* to be set in openinou.c 96/Jan/15 */
+ source_direct = NULL; /* to be set in openinou.c 98/Sep/29 */
dvi_file_name = NULL; /* to be set in openinou.c 00/Jun/18 */
log_file_name = NULL; /* to be set in openinou.c 00/Jun/18 */
textof = hash[h].v.RH;
if (textof == 0) return; /* ignore if text() == 0 */
- n = str_start[textof + 1] - str_start[textof];
+ n = length(textof);
if (textcolumn != 0) {
sprintf(log_line, ", ");
if (output != NULL) fprintf(output, log_line);
textcolumn += n;
}
-int comparestrn (int, int, int, int); /* in tex9.c */
+int compare_strn (int, int, int, int); /* in tex9.c */
/* compare two csnames in qsort */
-int comparecs (const void *cp1, const void *cp2)
+int compare_cs (const void *cp1, const void *cp2)
{
int c1, c2, l1, l2, k1, k2, textof1, textof2;
c1 = *(int *)cp1;
c2 = *(int *)cp2;
textof1 = hash[c1].v.RH;
textof2 = hash[c2].v.RH;
- l1 =(str_start[textof1 + 1] - str_start[textof1]);
- l2 =(str_start[textof2 + 1] - str_start[textof2]);
+ l1 = length(textof1);
+ l2 = length(textof2);
k1 = str_start[textof1];
k2 = str_start[textof2];
/* showstring (k1, l1); */
/* showstring (k2, l2); */
- return comparestrn (k1, l1, k2, l2);
+ return compare_strn (k1, l1, k2, l2);
}
char *csused=NULL;
if (hash[h].v.RH != 0) cnumtable[ccount++] = h;
}
- qsort ((void *)cnumtable, ccount, sizeof (int), &comparecs);
+ qsort ((void *)cnumtable, ccount, sizeof (int), &compare_cs);
repeatflag = 0;
for (k = 0; k < ccount; k++) {
/* k1 and k2 are positions in string pool */
/* l1 and l2 are lengths of strings */
-int comparestrn (int k1, int l1, int k2, int l2)
+int compare_strn (int k1, int l1, int k2, int l2)
{
int c1, c2;
/* while (l1-- > 0 && l2-- > 0) { */
/* compare two font names and their at sizes in qsort */
-int comparefnt (const void *fp1, const void *fp2)
+int compare_fnt (const void *fp1, const void *fp2)
{
int f1, f2, l1, l2, k1, k2, s;
f1 = *(short *)fp1;
f2 = *(short *)fp2;
- l1 =(str_start[font_name[f1]+ 1] - str_start[font_name[f1]]);
- l2 =(str_start[font_name[f2]+ 1] - str_start[font_name[f2]]);
+ l1 = length(font_name[f1]);
+ l2 = length(font_name[f2]);
k1 = str_start[font_name[f1]];
k2 = str_start[font_name[f2]];
/* showstring (k1, l1); */
/* showstring (k2, l2); */
- s = comparestrn (k1, l1, k2, l2);
+ s = compare_strn (k1, l1, k2, l2);
/* sprintf(log_line, "%d\n", s); */
if (s != 0) return s;
if (font_size[f1]> font_size[f2]) return 1;
/* compare two font names */
-int comparefntname (int f1, int f2)
+int compare_fnt_name (int f1, int f2)
{
int l1, l2, k1, k2, s;
- l1 =(str_start[font_name[f1]+ 1] - str_start[font_name[f1]]);
- l2 =(str_start[font_name[f2]+ 1] - str_start[font_name[f2]]);
+ l1 = length(font_name[f1]);
+ l2 = length(font_name[f2]);
k1 = str_start[font_name[f1]];
k2 = str_start[font_name[f2]];
/* showstring (k1, l1); */
/* showstring (k2, l2); */
- s = comparestrn (k1, l1, k2, l2);
+ s = compare_strn (k1, l1, k2, l2);
/* sprintf(log_line, "%d\n", s); */
return s;
}
/* suppressname = 0; */
putc(' ', log_file);
if (suppressname == 0) {
- a = (str_start[font_area[f]+ 1]- str_start[font_area[f]]);
- l = (str_start[font_name[f]+ 1]- str_start[font_name[f]]);
+ a = length(font_area[f]);
+ l = length(font_name[f]);
k = str_start[font_area[f]];
for_end = str_start[font_area[f]+ 1]- 1;
if (k <= for_end) do {
for (k = 1; k <= font_ptr; k++)
if (font_used[k])fnumtable[fcount++] = (short) k;
- qsort ((void *)fnumtable, fcount, sizeof (short), &comparefnt);
+ qsort ((void *)fnumtable, fcount, sizeof (short), &compare_fnt);
repeatflag = 0;
for (m = 0; m < fcount; m++) {
if (m > 0) {
- if (comparefntname(fnumtable[m-1], fnumtable[m]) == 0)
+ if (compare_fnt_name(fnumtable[m-1], fnumtable[m]) == 0)
repeatflag = 1;
else repeatflag = 0;
}
#define VFFILEPATHBIT (1 << VFFILEPATH)
#endif /* not OURPATHS_H */
-\1a
\ No newline at end of file
Specifically, a test in diag_round (in Metafont) on a quarterword
comes out differently without the cast, thus causing the trap test to
fail. (A path at line 86 is constructed slightly differently). */
-#define abs(x)((integer)(x)>=0?(integer)(x):(integer)-(x))
+#define abs(x) ((integer)(x)>=0?(integer)(x):(integer)-(x))
/* above conflicts with math.h ... */
#define BSTINPUTS ".;" TEXPATH "bib//"
#endif
-#ifndef MFBASES
-#define MFBASES ".;c:/mf/bases"
-#endif
-
-#ifndef MFINPUTS
-#define MFINPUTS "c:/mf/inputs//"
-#endif
-
-#ifndef MFPOOL
-#define MFPOOL "c:/mf/bases"
-#endif
-
/* Of course, TeX itself doesn't give a damn about any of the following: */
#ifndef GFFONTS
typedef struct map_element_struct
{
- char *key;
- char *value;
- struct map_element_struct *next;
+ char * key;
+ char * value;
+ struct map_element_struct * next;
} map_element_type;
typedef map_element_type **map_type;
-extern bool usesourcedirectory; /* in local.c */
+extern bool usesourcedirectory; /* in local.c */
-extern bool workingdirectory; /* in local.c */
+extern bool workingdirectory; /* in local.c */
bool absolute_p (string filename);
string readable (string name);
string truncate_pathname (string name);
-char *file_p(string fn);
+char * file_p(string fn);
bool dir_p(string fn);
string *find_dir_list (string path);
void add_directory (string **dir_list_ptr, unsigned *dir_count_ptr, string dir);
// the following do *not* use MALLOC
-extern char * xconcat (char *buffer, char *s1, char *s2); /* openinou.c */
+extern char * xconcat (char *buffer, char *s1, char *s2); /* openinou.c */
extern char * xconcat3 (char *buffer, char *s1, char *s2, char *s3); /* openinou.c */
/////////////////////////////////////////////////////////////////////////
}
jump_used++;
// I removed the longjmp.
- //longjmp(jumpbuffer, code+1); // 1999/Nov/7
+ //longjmp(jumpbuffer, final_code + 1); // 1999/Nov/7
exit(final_code);
}
return new_mem;
}
-/* Return a copy of s in new storage. */ /* xmalloc does error checking */
+/* Return a copy of s in new storage. */ /* xmalloc does error checking */
string xstrdup (string s)
{
// following used only in itex.c on pool file
-/* Return true if we're at the end of FILE, else false. This implements
- Pascal's `eof' builtin. */
+/* Return true if we're at the end of FILE, else false. This implements */
+/* Pascal's `eof' builtin. */
/* It differs from C feof in that the latter is not true at end of file
- unless an attempt has actually been made to read past EOF */
+ unless an attempt has actually been made to read past EOF */
-bool test_eof (FILE *file)
+bool test_eof (FILE * file)
{
int c;
/* Maybe we're already at the end? */
/* Return true on end-of-line in FILE or at the end of FILE, else false. */
-bool eoln (FILE *file)
+bool eoln (FILE * file)
{
int c;
if (feof (file))
// this returns newly allocated character string
-char *read_line (FILE *f)
+char *read_line (FILE * f)
{
int c;
unsigned int limit = BLOCK_SIZE;
void set_paths (int path_bits)
{
- int n; /* 97/Apr/2 */
+ int n; /* 97/Apr/2 */
char *s, *t, *u; /* 94/Jan/6 */
char buffer[PATH_MAX];
}
#ifdef CACHEFILENAME
- char last_filename[PATH_MAX]=""; /* last full path / file name found C */
- char last_name[PATH_MAX]=""; /* last file name searched for C */
- int last_path_index=-1; /* last path_index */
+ char last_filename[PATH_MAX] = ""; /* last full path / file name found C */
+ char last_name[PATH_MAX] = ""; /* last file name searched for C */
+ int last_path_index = -1; /* last path_index */
#endif
/* Look for NAME, a C string (no longer Pascal), in the colon-separated list
/* then use cached full path / file name 96/Nov/16 */
if (cache_file_flag) {
if (path_index == last_path_index &&
- strcmp(name, last_name) == 0 && *last_filename != '\0') {
+ strcmp((const char *)name, last_name) == 0 && *last_filename != '\0') {
if (open_trace_flag) {
sprintf(log_line, "\nFOUND `%s' (%d) IN CACHE: `%s' ",
name, path_index, last_filename);
/* name+1, path_index, last_filename); */
show_line(log_line, 0);
}
- strcpy(name, last_filename);
+ strcpy((char *)name, last_filename);
return TRUE;
}
last_path_index = path_index;
- strcpy(last_name, name);
+ strcpy(last_name, (const char *)name);
*last_filename = '\0'; /* in case not found */
}
#endif
/* The hash function. We go for simplicity here. */
-static unsigned map_hash (char *key)
+static unsigned map_hash (char * key)
{
unsigned n = 0;
/* this string allocation / concatination is silly - use fixed buffer! */
-int xfind_path_filename (string buffer, string filename, string * dir_list)
+int xfind_path_filename (string buffer, string filename, string * dir_list)
{
string found_name = NULL;
If ENV_NAME is null, only parse DEFAULT_PATH. If both are null, do
nothing and return NULL. */
-string *initialize_path_list (string env_name, string default_path)
+string * initialize_path_list (string env_name, string default_path)
{
string dir, path;
string *dir_list;
}
add_directory (&dir_list, &dir_count, dir);
/* local variable 'findt' used without having been initialized ? &findt ? */
- expand_subdir (&dir_list, &dir_count, dir,
- findt, 1); /* 95/Jan/31 */
+ expand_subdir (&dir_list, &dir_count, dir, findt, 1); /* 95/Jan/31 */
}
}
/* following is new to find only directories to one level 1994/Jan/24 */
#endif
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
+INLINE void dvi_out_(ASCII_code op)
+{
+ dvi_buf[dvi_ptr] = op;
+ incr(dvi_ptr);
+ if (dvi_ptr == dvi_limit)
+ dvi_swap();
+}
void succumb (void)
{
if (interaction == error_stop_mode)
print_scaled(d);
}
/* sec 0177 */
-void print_glue_(scaled d, integer order, str_number s)
+void print_glue_(scaled d, integer order, char * s)
{
print_scaled(d);
- if ((order < normal)||(order > filll))
+ if ((order < normal) || (order > filll))
print_string("foul");
else if (order > 0)
{
print_char('l');
decr(order);
}
- } else if (s != 0)
- print(s);
+ } else if (*s != '\0')
+ print_string(s);
}
/* sec 0178 */
-void print_spec_(integer p, str_number s)
+void print_spec_(integer p, char * s)
{
if ((p < mem_min)||(p >= lo_mem_max))
print_char('*');
else {
print_scaled(mem[p + 1].cint);
- if (s != 0)
- print(s);
+ if (*s != '\0')
+ print_string(s);
if (stretch(p) != 0)
{
if (mem[p + 6].cint != 0)
{
print_string(", stretch");
- print_glue(mem[p + 6].cint, mem[p + 5].hh.b1, 0);
+ print_glue(mem[p + 6].cint, mem[p + 5].hh.b1, "");
}
if (mem[p + 4].cint != 0)
{
print_string(", shrink");
- print_glue(mem[p + 4].cint, mem[p + 5].hh.b0, 0);
+ print_glue(mem[p + 4].cint, mem[p + 5].hh.b0, "");
}
} else {
g = mem[p + 6].gr;
print_char('>');
else
print_string("< -");
- print_glue(20000 * 65536L, mem[p + 5].hh.b1, 0);
- } else print_glue(round(65536L * g), mem[p + 5].hh.b1, 0);
+ print_glue(20000 * 65536L, mem[p + 5].hh.b1, "");
+ } else print_glue(round(65536L * g), mem[p + 5].hh.b1, "");
}
if (mem[p + 4].cint != 0)
{
{
print_esc("insert");
print_int(mem[p].hh.b1);
- print_string(",natural size ");
+ print_string(", natural size ");
print_scaled(mem[p + 3].cint);
print_string("; split(");
- print_spec(mem[p + 4].hh.v.RH, 0);
+ print_spec(mem[p + 4].hh.v.RH, "");
print_char(',');
print_scaled(mem[p + 2].cint);
print_string("(; float cost");
else if (mem[p].hh.b1 == 102)
print_char('x');
print_string("leaders ");
- print_spec(mem[p + 1].hh.v.LH, 0);
+ print_spec(mem[p + 1].hh.v.LH, "");
{
{
str_pool[pool_ptr]= 46;
{
print_char(' ');
if (mem[p].hh.b1 < 98)
- print_spec(mem[p + 1].hh.v.LH, 0);
+ print_spec(mem[p + 1].hh.v.LH, "");
else
- print_spec(mem[p + 1].hh.v.LH, 334); /* mu */
+ print_spec(mem[p + 1].hh.v.LH, "mu");
}
}
break;
#pragma warning(disable:4244) /* 96/Jan/10 */
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
+/* sec 0198 */
void show_box_(halfword p)
{
depth_threshold = show_box_depth;
breadth_max = show_box_breadth;
+
if (breadth_max <= 0)
- breadth_max = 5;
+ breadth_max = 5;
+
#ifdef ALLOCATESTRING
if (pool_ptr + depth_threshold >= current_pool_size)
- str_pool = realloc_str_pool (increment_pool_size);
+ str_pool = realloc_str_pool(increment_pool_size);
if (pool_ptr + depth_threshold >= current_pool_size)
depth_threshold = current_pool_size - pool_ptr - 1;
#else
#endif
show_node_list(p);
print_ln();
-}
+}
+/* sec 0200 */
void delete_token_ref_(halfword p)
{
if (mem[p].hh.v.LH == 0)
else
decr(mem[p].hh.v.LH);
}
+/* sec 0201 */
void delete_glue_ref_(halfword p)
{
if (mem[p].hh.v.RH == 0)
else
decr(mem[p].hh.v.RH);
}
+/* sec 0202 */
void flush_node_list_(halfword p)
{
halfword q;
p = q;
}
}
+/* sec 0204 */
halfword copy_node_list_(halfword p)
{
register halfword Result;
}
Result = q;
return Result;
-}
+}
+/* sec 0211 */
void print_mode_(integer m)
{
if (m > 0)
case 2:
print_string("display math");
break;
- } else if (m == 0)
- print_string("no");
+ }
+ else if (m == 0)
+ print_string("no");
else switch ((- (integer) m)/(101))
{
case 0:
}
print_string(" mode");
}
+/* sec 0216 */
void push_nest (void)
{
if (nest_ptr > max_nest_stack)
prev_graf = 0;
mode_line = line;
}
+/* sec 0217 */
void pop_nest (void)
{
{
decr(nest_ptr);
cur_list = nest[nest_ptr];
}
-void show_activities (void)
+/* sec 0218 */
+void show_activities (void)
{
integer p;
short m;
break;
}
}
+/* sec 0245 */
void begin_diagnostic (void)
{
old_setting = selector;
if (history == 0) history = 1;
}
}
+/* sec 0245 */
void end_diagnostic_(bool blankline)
{
print_nl(" ");
if (blankline) print_ln();
selector = old_setting;
}
+/* sec 0247 */
void print_length_param_ (integer n)
{
switch (n)
break;
}
}
+/* sec 0298 */
void print_cmd_chr_ (quarterword cmd, halfword chrcode)
{
switch (cmd)
{
case 1:
- {
- print_string("begin-group character ");
- print(chrcode);
- }
+ print_string("begin-group character ");
+ print(chrcode);
break;
case 2:
- {
- print_string("end-group character ");
- print(chrcode);
- }
+ print_string("end-group character ");
+ print(chrcode);
break;
case 3:
- {
- print_string("math shift character ");
- print(chrcode);
- }
+ print_string("math shift character ");
+ print(chrcode);
break;
case 6:
- {
- print_string("macro parameter character ");
- print(chrcode);
- }
+ print_string("macro parameter character ");
+ print(chrcode);
break;
case 7:
{
}
#ifdef STAT
+/* sec 0252 */
void show_eqtb_(halfword n)
{
if (n < 1)
print_skip_param(n - (hash_size + 782)); /* lineskip */
print_char('=');
if (n < (hash_size + 797))
- print_spec(eqtb[n].hh.v.RH, 394); /* pt */
+ print_spec(eqtb[n].hh.v.RH, "pt");
else
- print_spec(eqtb[n].hh.v.RH, 334); /* mu */
+ print_spec(eqtb[n].hh.v.RH, "mu");
} else if (n < (hash_size + 1056))
{
print_esc("skip");
print_int(n - (hash_size + 800));
print_char('=');
- print_spec(eqtb[n].hh.v.RH, 394); /* pt */
+ print_spec(eqtb[n].hh.v.RH, "pt");
} else {
print_esc("muskip");
print_int(n - (hash_size + 1056));
print_char('=');
- print_spec(eqtb[n].hh.v.RH, 334); /* mu */
+ print_spec(eqtb[n].hh.v.RH, "mu");
} else if (n < (hash_size + 3163))
if (n == (hash_size + 1312))
{
error();
}
void ins_error (void)
-{
- OK_to_interrupt = false;
- back_input();
- cur_input.index_field = 4;
- OK_to_interrupt = true;
- error();
+{
+ OK_to_interrupt = false;
+ back_input();
+ cur_input.index_field = 4;
+ OK_to_interrupt = true;
+ error();
}
void begin_file_reading (void)
{
{
;
print_string("=>");
- term_input("=>", 0);
+ term_input(615, 0);
}
if (last > first){
{
incr(m);
u = mem[t].hh.v.RH;
v = s;
- while(true){
+ while (true) {
if (u == r)
if (cur_tok != mem[v].hh.v.LH)
goto lab30;
else {
-
r = mem[v].hh.v.RH;
goto lab22;
}
if (cur_tok < 512)
{
unbalance = 1;
- while(true){
+ while (true) {
{
{
q = avail;
goto lab22;
lab40: if (s != 0)
{
- if ((m == 1)&&(mem[p].hh.v.LH < 768)&&(p != temp_head
- ))
+ if ((m == 1) && (mem[p].hh.v.LH < 768) && (p != temp_head))
{
mem[rbraceptr].hh.v.RH = 0; /* rbraceptr may be used without ... */
{
}
void expand (void)
{
- halfword t;
- halfword p, q, r;
- integer j;
- integer cvbackup;
- small_number cvlbackup, radixbackup, cobackup;
- halfword backupbackup;
- small_number savescannerstatus;
+ halfword t;
+ halfword p, q, r;
+ integer j;
+ integer cvbackup;
+ small_number cvlbackup, radixbackup, cobackup;
+ halfword backupbackup;
+ small_number savescannerstatus;
- cvbackup = cur_val;
- cvlbackup = cur_val_level;
- radixbackup = radix;
- cobackup = cur_order;
- backupbackup = mem[mem_top - 13].hh.v.RH;
+ cvbackup = cur_val;
+ cvlbackup = cur_val_level;
+ radixbackup = radix;
+ cobackup = cur_order;
+ backupbackup = mem[mem_top - 13].hh.v.RH;
if (cur_cmd < 111)
{
if (tracing_commands > 1)
- show_cur_cmd_chr();
+ show_cur_cmd_chr();
switch(cur_cmd)
- {case 110 :
+ {case 110:
{
/* begin if cur_mark[cur_chr]<>null then l.7881 */
- if (cur_mark[cur_chr]!= 0)
+ if (cur_mark[cur_chr] != 0)
begin_token_list(cur_mark[cur_chr], 14);
}
break;
get_token();
t = cur_tok;
get_token();
- if (cur_cmd > 100){
+ if (cur_cmd > 100) {
expand();
}
else back_input();
{
do {
get_x_token();
- } while(!((cur_cmd != 10)&&(cur_cmd != 0)));
+ } while(!((cur_cmd != 10) && (cur_cmd != 0)));
if (cur_cmd != 1)
{
print_err("Missing { inserted");
void scan_optional_equals (void)
{
do {
- get_x_token();
- } while(!(cur_cmd != 10));
- if (cur_tok != 3133)back_input();
-}
+ get_x_token();
+ } while(!(cur_cmd != 10));
+ if (cur_tok != 3133)
+ back_input();
+}
+/* sec 0407 */
bool scan_keyword_(char * s)
-{/* 10 */ register bool Result;
- halfword p;
- halfword q;
- char * k;
- p = mem_top - 13;
- mem[p].hh.v.RH = 0;
- k = s;
- while(*k) {
+{
+ register bool Result;
+ halfword p;
+ halfword q;
+ char * k;
+ p = mem_top - 13;
+ mem[p].hh.v.RH = 0;
+ k = s;
+ while (*k) {
get_x_token();
- if ((cur_cs == 0) && ((cur_chr == (*k))||(cur_chr == (*k)- 32))) {
+ if ((cur_cs == 0) && ((cur_chr == (*k)) || (cur_chr == (*k) - 32))) {
{
- q = get_avail();
- mem[p].hh.v.RH = q;
- mem[q].hh.v.LH = cur_tok;
- p = q;
- }
- incr(k);
- }
- else if ((cur_cmd != 10)||(p != mem_top - 13))
- {
- back_input();
+ q = get_avail();
+ mem[p].hh.v.RH = q;
+ mem[q].hh.v.LH = cur_tok;
+ p = q;
+ }
+ incr(k);
+ } else if ((cur_cmd != 10) || (p != mem_top - 13)) {
+ back_input();
if (p != mem_top - 13)
- begin_token_list(mem[mem_top - 13].hh.v.RH, 3);
- Result = false;
- return(Result);
- }
- }
- flush_list(mem[mem_top - 13].hh.v.RH);
- Result = true;
- return Result;
-}
+ begin_token_list(mem[mem_top - 13].hh.v.RH, 3);
+ Result = false;
+ return(Result);
+ }
+ }
+ flush_list(mem[mem_top - 13].hh.v.RH);
+ Result = true;
+ return Result;
+}
void mu_error (void)
-{
+{
print_err("Incompatible glue units");
- help1("I'm going to assume that 1mu=1pt when they're mixed.");
- error();
-}
-void scan_eight_bit_int (void)
-{
- scan_int();
- if ((cur_val < 0)||(cur_val > 255))
- {
- print_err("Bad register code");
+ help1("I'm going to assume that 1mu=1pt when they're mixed.");
+ error();
+}
+void scan_eight_bit_int (void)
+{
+ scan_int();
+ if ((cur_val < 0) || (cur_val > 255)) {
+ print_err("Bad register code");
help2("A register number must be between 0 and 255.",
"I changed this one to zero.");
- int_error(cur_val);
- cur_val = 0;
- }
-}
+ int_error(cur_val);
+ cur_val = 0;
+ }
+}
void scan_char_num (void)
{
- scan_int();
- if ((cur_val < 0)||(cur_val > 255))
- {
+ scan_int();
+ if ((cur_val < 0) || (cur_val > 255)) {
print_err("Bad character code");
help2("A character number must be between 0 and 255.",
"I changed this one to zero.");
- int_error(cur_val);
- cur_val = 0;
- }
-}
-void scan_four_bit_int (void)
+ int_error(cur_val);
+ cur_val = 0;
+ }
+}
+void scan_four_bit_int (void)
{
- scan_int();
- if ((cur_val < 0)||(cur_val > 15))
- {
+ scan_int();
+ if ((cur_val < 0) || (cur_val > 15)) {
print_err("Bad number");
help2("Since I expected to read a number between 0 and 15,",
"I changed this one to zero.");
- int_error(cur_val);
- cur_val = 0;
- }
-}
+ int_error(cur_val);
+ cur_val = 0;
+ }
+}
void scan_fifteen_bit_int (void)
-{
- scan_int();
- if ((cur_val < 0)||(cur_val > 32767))
- {
+{
+ scan_int();
+ if ((cur_val < 0) || (cur_val > 32767)) {
print_err("Bad mathchar");
help2("A mathchar number must be between 0 and 32767.",
"I changed this one to zero.");
- int_error(cur_val);
- cur_val = 0;
- }
-}
+ int_error(cur_val);
+ cur_val = 0;
+ }
+}
void scan_twenty_seven_bit_int (void)
-{
- scan_int();
- if ((cur_val < 0)||(cur_val > 134217727L)) /* 2^27 - 1 */
- {
- print_err("Bad delimiter code");
+{
+ scan_int();
+ if ((cur_val < 0) || (cur_val > 134217727L)) /* 2^27 - 1 */ {
+ print_err("Bad delimiter code");
help2("A numeric delimiter code must be between 0 and 2^{27}-1.",
"I changed this one to zero.");
- int_error(cur_val);
- cur_val = 0;
- }
-}
+ int_error(cur_val);
+ cur_val = 0;
+ }
+}
+/* sec 0577 */
void scan_font_ident (void)
{
- internal_font_number f;
- halfword m;
+ internal_font_number f;
+ halfword m;
+
do {
get_x_token();
- } while(!(cur_cmd != 10));
- if (cur_cmd == 88)
- f = eqtb[(hash_size + 1834)].hh.v.RH;
- else if (cur_cmd == 87)
- f = cur_chr;
- else if (cur_cmd == 86)
- {
- m = cur_chr;
- scan_four_bit_int();
- f = eqtb[m + cur_val].hh.v.RH;
- }
- else {
- print_err("Missing font identifier");
- help2("I was looking for a control sequence whose",
+ } while (!(cur_cmd != 10));
+
+ if (cur_cmd == def_font)
+ f = cur_font;
+ else if (cur_cmd == set_font)
+ f = cur_chr;
+ else if (cur_cmd == def_family) {
+ m = cur_chr;
+ scan_four_bit_int();
+ f = equiv(m + cur_val);
+ } else {
+ print_err("Missing font identifier");
+ help2("I was looking for a control sequence whose",
"current meaning has been defined by \\font.");
back_error();
f = 0;
/* else begin if writing and(n<=space_shrink_code)and@|
(n>=space_code)and(font_glue[f]<>null) then
begin delete_glue_ref(font_glue[f]); l.11225 */
- if (writing &&(n <= 4)&&(n >= 2)&&(font_glue[f]!= 0))
+ if (writing && (n <= 4) && (n >= 2) && (font_glue[f]!= 0))
{
delete_glue_ref(font_glue[f]);
font_glue[f]= 0; /* font_glue[f]:=null */
font_check[f].b2) << 8 | font_check[f].b3; */
}
/* compiler error: '-' : incompatible types - from 'union fmemoryword *' to 'struct fourunsignedchars *' */
- if (cur_val == fmem_ptr){
+ if (cur_val == fmem_ptr) {
print_err("Font ");
/* print_esc(hash[(hash_size + 524) + f].v.RH); */
//print_esc(hash[(hash_size + hash_extra + 524) + f].v.RH); /*96/Jan/10*/
- print_esc("");print(hash[(hash_size + hash_extra + 524) + f].v.RH);
+ print_esc(""); print(hash[(hash_size + hash_extra + 524) + f].v.RH);
print_string(" has only ");
print_int(font_params[f]);
print_string(" fontdimen parameters");
- help2("To increase the number of font parameters, you must",
- "use \\fontdimen immediately after the \\font is loaded.");
+ help2("To increase the number of font parameters, you must",
+ "use \\fontdimen immediately after the \\font is loaded.");
error();
}
-}
+}
/* NOTE: the above use of /fontdimen0 to access the checksum is a kludge */
/* In future would be better to do this by allocating one more slot for */
/* for parameters when a font is read rather than carry checksum separately */
/* The above gets the value byte order reversed ... 98/Oct/5 */
-
+/* sec 0413 */
void scan_something_internal_(small_number level, bool negative)
-{
- halfword m;
- integer p;
- m = cur_chr;
+{
+ halfword m;
+ integer p;
+ m = cur_chr;
switch(cur_cmd)
- {case 85 :
+ {
+ case def_code:
{
scan_char_num();
- if (m == (hash_size + 2907))
+ if (m == math_code_base)
{
- cur_val = eqtb[(hash_size + 2907) + cur_val].hh.v.RH;
- cur_val_level = 0;
- }
- else if (m < (hash_size + 2907))
- {
- cur_val = eqtb[m + cur_val].hh.v.RH;
- cur_val_level = 0;
- }
- else {
-
- cur_val = eqtb[m + cur_val].cint;
- cur_val_level = 0;
- }
- }
+ cur_val = eqtb[(hash_size + 2907) + cur_val].hh.v.RH;
+ cur_val_level = 0;
+ } else if (m < math_code_base) {
+ cur_val = eqtb[m + cur_val].hh.v.RH;
+ cur_val_level = 0;
+ } else {
+ cur_val = eqtb[m + cur_val].cint;
+ cur_val_level = 0;
+ }
+ }
break;
- case 71 :
- case 72 :
- case 86 :
- case 87 :
- case 88 :
+ case toks_register:
+ case assign_toks:
+ case def_family:
+ case set_font:
+ case def_font:
if (level != 5)
{
print_err("Missing number, treated as zero");
if (cur_cmd < 72)
{
scan_eight_bit_int();
- m = (hash_size + 1322) + cur_val;
+ m = toks_base + cur_val;
}
{
cur_val = eqtb[m].hh.v.RH;
}
}
else {
-
back_input();
scan_font_ident();
{
}
}
break;
- case 73 :
+ case assign_int:
{
cur_val = eqtb[m].cint;
cur_val_level = 0;
}
break;
- case 74 :
+ case assign_dimen:
{
cur_val = eqtb[m].cint;
cur_val_level = 1;
}
break;
- case 75 :
+ case assign_glue:
{
cur_val = eqtb[m].hh.v.RH;
cur_val_level = 2;
}
break;
- case 76 :
+ case assign_mu_glue:
{
cur_val = eqtb[m].hh.v.RH;
cur_val_level = 3;
}
break;
- case 79 :
+ case set_aux:
if (abs(mode)!= m)
{
print_err("Improper ");
cur_val_level = 1;
}
else {
-
cur_val = 0;
cur_val_level = 0;
}
cur_val_level = 1;
}
else {
-
cur_val = space_factor;
cur_val_level = 0;
}
break;
- case 80 :
+ case set_prev_graf:
if (mode == 0)
{
cur_val = 0;
cur_val_level = 0;
}
else {
-
nest[nest_ptr]= cur_list;
p = nest_ptr;
while(abs(nest[p].mode_field)!= 1)decr(p);
}
}
break;
- case 82 :
+ case set_page_int:
{
if (m == 0)
cur_val = dead_cycles;
cur_val_level = 0;
}
break;
- case 81 :
+ case set_page_dimen:
{
- if ((page_contents == 0)&&(! output_active))
- if (m == 0)
- cur_val = 1073741823L; /* 2^30 - 1 */
- else cur_val = 0;
- else cur_val = page_so_far[m];
+ if ((page_contents == 0) && (! output_active))
+ if (m == 0)
+ cur_val = 1073741823L; /* 2^30 - 1 */
+ else cur_val = 0;
+ else cur_val = page_so_far[m];
cur_val_level = 1;
}
break;
- case 84 :
+ case set_shape:
{
- if (eqtb[(hash_size + 1312)].hh.v.RH == 0)
+ if (par_shape_ptr == 0)
cur_val = 0;
- else cur_val = mem[eqtb[(hash_size + 1312)].hh.v.RH].hh.v.LH;
+ else cur_val = mem[par_shape_ptr].hh.v.LH;
cur_val_level = 0;
}
break;
- case 83 :
+ case set_box_dimen:
{
scan_eight_bit_int();
- if (eqtb[(hash_size + 1578) + cur_val].hh.v.RH == 0)
+ if (eqtb[box_base + cur_val].hh.v.RH == 0)
cur_val = 0;
else cur_val = mem[eqtb[(hash_size + 1578) + cur_val].hh.v.RH + m].cint;
cur_val_level = 1;
}
break;
- case 68 :
- case 69 :
+ case char_given:
+ case math_given:
{
cur_val = cur_chr;
cur_val_level = 0;
}
break;
- case 77 :
+ case assign_font_dimen:
{
find_font_dimen(false);
font_info[fmem_ptr].cint = 0;
}
}
break;
- case 78 :
+ case assign_font_int:
{
scan_font_ident();
- if (m == 0){
- cur_val = hyphen_char[cur_val];
- cur_val_level = 0;
- }
- else {
-
- cur_val = skew_char[cur_val];
- cur_val_level = 0;
+ if (m == 0) {
+ cur_val = hyphen_char[cur_val];
+ cur_val_level = 0;
+ } else {
+ cur_val = skew_char[cur_val];
+ cur_val_level = 0;
}
}
break;
- case 89 :
+ case tex_register:
{
- scan_eight_bit_int();
+ scan_eight_bit_int();
switch(m)
- {case 0 :
- cur_val = eqtb[(hash_size + 3218) + cur_val].cint;
- break;
- case 1 :
- cur_val = eqtb[(hash_size + 3751) + cur_val].cint;
- break;
- case 2 :
- cur_val = eqtb[(hash_size + 800) + cur_val].hh.v.RH;
- break;
- case 3 :
- cur_val = eqtb[(hash_size + 1056) + cur_val].hh.v.RH;
- break;
- }
- cur_val_level = m;
- }
- break;
- case 70 :
+ {
+ case 0 :
+ cur_val = eqtb[(hash_size + 3218) + cur_val].cint;
+ break;
+ case 1:
+ cur_val = eqtb[(hash_size + 3751) + cur_val].cint;
+ break;
+ case 2:
+ cur_val = eqtb[(hash_size + 800) + cur_val].hh.v.RH;
+ break;
+ case 3:
+ cur_val = eqtb[(hash_size + 1056) + cur_val].hh.v.RH;
+ break;
+ }
+ cur_val_level = m;
+ }
+ break;
+ case last_item:
if (cur_chr > 2)
{
if (cur_chr == 3)
cur_val_level = 0;
}
else {
-
if (cur_chr == 2)
cur_val = 0;
else cur_val = 0;
}
break;
}
- else if ((mode == 1)&&(tail == cur_list
- .head_field))
+ else if ((mode == 1) && (tail == cur_list.head_field))
switch(cur_chr)
{case 0 :
cur_val = last_penalty;
}
break;
}
- while(cur_val_level > level){
-
+ while (cur_val_level > level) {
if (cur_val_level == 2)
cur_val = mem[cur_val + 1].cint;
else if (cur_val_level == 3){
/* Moved here to avoid question about pragma optimize 96/Sep/12 */
-/* #pragma optimize ("a", off) */
-
void get_next (void)
-{/* 20 25 21 26 40 10 */
+{
integer k;
halfword t;
/* char cat; */ /* make this an int ? */
{
;
print_string("*"); /* * */
- term_input("*", 0);
+ term_input(42, 0);
}
cur_input.limit_field = last;
if ((end_line_char < 0)||
void scan_int (void)
{
- bool negative;
+ bool negative;
integer m;
small_number d;
bool vacuous;
if (q == 0)
q = get_avail();
else {
-
avail = mem[q].hh.v.RH;
mem[q].hh.v.RH = 0;
;
}
}
Result = p;
- }
- else {
-
+ } else {
old_setting = selector;
selector = 21;
b = pool_ptr;
break;
case 2 :
{
- print_spec(cur_val, 394); /* pt */
+ print_spec(cur_val, "pt");
delete_glue_ref(cur_val);
}
break;
case 3 :
{
- print_spec(cur_val, 334); /* mu */
+ print_spec(cur_val, "mu");
delete_glue_ref(cur_val);
}
break;
print(font_name[cur_val]);
if (font_size[cur_val]!= font_dsize[cur_val])
{
- print_string("at ");
+ print_string(" at ");
print_scaled(font_size[cur_val]);
print_string("pt");
}
if (n < 0) {
;
print_string("");
- term_input("", 0);
+ term_input(335, 0);
}
else {
;
{
;
print_string("=");
- term_input("=", 0);
+ term_input(61, 0);
}
n = -1;
}
if ((c == '/' || c == '\\' || c == ':')) /* 94/Mar/1 */
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
{
- area_delimiter = (pool_ptr - str_start[str_ptr]);
+ area_delimiter = cur_length;
ext_delimiter = 0;
}
else if (c == 46) /* . */
- ext_delimiter = (pool_ptr - str_start[str_ptr]);
+ ext_delimiter = cur_length;
Result = true;
}
return Result;
// code in new_font (tex8.c) will take care of reuse of font name already
// for (k = 0; k < str_ptr; k++) {
for (k = 0; k < str_ptr-1; k++) {
- if ((str_start[k+1] - str_start[k]) != nlen) continue;
- if (strncmp(str_pool+start, str_pool+str_start[k], nlen) == 0) {
+ if (length(k) != nlen) continue;
+ if (strncmp((const char *)str_pool + start, (const char *) str_pool + str_start[k], nlen) == 0) {
if (trace_flag) {
sprintf(log_line, "\nFOUND the string %d (%d) ", k, str_start[k+1]-str_start[k]);
s = log_line + strlen(log_line);
- strncpy(s, str_pool+start, nlen);
+ strncpy(s, (const char *)str_pool + start, nlen);
strcpy(s+nlen, "\n");
show_line(log_line, 0);
}
if (trace_flag) {
sprintf(log_line, "\nNOT FOUND string ");
s = log_line + strlen(log_line);
- strncpy(s, str_pool+start, nlen);
+ strncpy(s, (const char*)str_pool + start, nlen);
strcpy(s+nlen, "\n");
show_line(log_line, 0);
}
int n = end-start;
sprintf(log_line, "\nSTRIPPING OUT %d %d ", n, nlen);
s = log_line + strlen(log_line);
- strncpy(s, str_pool+start, n);
+ strncpy(s, (const char *)str_pool + start, n);
strcpy(s+n, "\n");
show_line(log_line, 0);
}
void show_string (int k)
{ // debugging code
- int nlen = str_start[k+1] - str_start[k];
+ int nlen = length(k);
char *s;
sprintf(log_line, "\nSTRING %5d (%3d) %5d--%5d ",
k, nlen, str_start[k], str_start[k+1]);
s = log_line + strlen(log_line);
- strncpy(s, str_pool+str_start[k], nlen);
+ strncpy(s, (const char *)str_pool + str_start[k], nlen);
strcpy(s + nlen, "");
show_line(log_line, 0);
}
str_start = realloc_str_start(increment_max_strings);
if ((pool_ptr + name_length > current_pool_size)||
(str_ptr == current_max_strings)||
- ((pool_ptr - str_start[str_ptr])> 0))
+ (cur_length > 0))
#else
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
if ((pool_ptr + name_length > pool_size)||(str_ptr == max_strings)||
- ((pool_ptr - str_start[str_ptr])> 0))
+ (cur_length > 0))
#endif
Result = 63;
else {
void prompt_file_name_(str_number s, str_number e)/* s - what can't be found, e - default */
{
integer k;
- if (interaction == 2)
+ if (interaction == scroll_mode)
;
if (s == 781)
print_err("I can't find file `");
{
;
print_string(": ");
- term_input(": ", 0);
+ term_input(565, 0);
}
/* should we deal with tilde and space in file name here ??? */
{
jobnameappend(); /* append `extension' to job_name */
open_log_file();
}
- if (term_offset +(str_start[cur_input.name_field + 1]- str_start[
- cur_input.name_field])> max_print_line - 2) /* was 3 ? */
+ if (term_offset + length(cur_input.name_field) > max_print_line - 2) /* was 3 ? */
print_ln();
else if ((term_offset > 0)||(file_offset > 0))
print_char(' ');
print_file_name(nom, aire, 335); /* "" */
if (s >= 0)
{
- print_string("at ");
+ print_string(" at ");
print_scaled(s);
print_string("pt");
}
print_string("scaled");
print_int(- (integer) s);
}
- if (fileopened)print_string("not loadable: Bad metric (TFM) file");
- else print_string("not loadable: Metric (TFM) file not found");
+ if (fileopened)print_string(" not loadable: Bad metric (TFM) file");
+ else print_string(" not loadable: Metric (TFM) file not found");
if (aire == 335) { /* "" only if path not specified */
if (show_texinput_flag) show_tex_fonts(); /* 98/Jan/31 */
}
/* print_char(32); */
}
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
- print_string("in font");
+ print_string(" in font ");
slow_print(font_name[f]);
print_char('!');
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
void dvi_four_(integer x) /* attempt at speeding up bkph - is compiler smart ? */
{
if (x >= 0)
- {
-/* dvi_buf[dvi_ptr]= x / 16777216L; */ /* 2^24 */
-/* dvi_buf[dvi_ptr]=(x >> 24); */
- dvi_buf[dvi_ptr]= (unsigned char)(x >> 24);
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ // dvi_out(x % 16777216L);
+ dvi_out((x >> 24));
else {
x = x + 1073741824L; /* 2^30 40000000 hex */
- x = x + 1073741824L;
- {
-/* dvi_buf[dvi_ptr]=(x / 16777216L)+ 128; */ /* 2^24 */
- dvi_buf[dvi_ptr]=(x >> 24)+ 128; /* set sign bit */
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ x = x + 1073741824L;
+ //dvi_out((x / 16777216L) + 128);
+ dvi_out((x >> 24) + 128);
}
/* x = x % 16777216L; */ /* % 2^24 */
- x = x & 16777215L;
- {
-/* dvi_buf[dvi_ptr]= x / 65536L; */
-/* dvi_buf[dvi_ptr]=(x >> 16); */
- dvi_buf[dvi_ptr]= (unsigned char)(x >> 16);
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ x = x & 16777215L;
+ //dvi_out(x / 65536L);
+ dvi_out((x >> 16));
/* x = x % 65536L; */ /* % 2^16 */
x = x & 65535L;
- {
-/* dvi_buf[dvi_ptr]= x / 256; */
-/* dvi_buf[dvi_ptr]=(x >> 8); */
- dvi_buf[dvi_ptr]= (unsigned char)(x >> 8);
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
-/* dvi_buf[dvi_ptr]= x % 256; */ /* % 2^8 */
- dvi_buf[dvi_ptr]= x & 255;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ //dvi_out(x / 256);
+ dvi_out((x >> 8));
+ //dvi_out(x % 256);
+ dvi_out(x & 255);
}
/* following needs access to dvi_buf=zdvibuf see coerce.h */
void zdvipop(integer l)
{
- if ((l == dvi_offset + dvi_ptr)&&(dvi_ptr > 0))
- decr(dvi_ptr);
- else {
-
- dvi_buf[dvi_ptr]= 142;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ if ((l == dvi_offset + dvi_ptr) && (dvi_ptr > 0))
+ decr(dvi_ptr);
+ else
+ dvi_out(142);
}
/* following needs access to dvi_buf=zdvibuf see coerce.h */
void dvi_font_def_(internal_font_number f)
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
#ifdef INCREASEFONTS
if (f <= 256) {
- {
- dvi_buf[dvi_ptr]= 243;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= f - 1;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(243);
+ dvi_out(f - 1);
}
else {
- {
- dvi_buf[dvi_ptr]= 244;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= (f - 1) >> 8; /* top byte */
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= (f - 1) & 255; /* bottom byte */
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(244);
+ dvi_out(((f - 1) >> 8));
+ dvi_out(((f - 1) & 255));
}
#else
- {
- dvi_buf[dvi_ptr]= 243;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= f - 1;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(243);
+ dvi_out(f - 1);
#endif
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
/* spit out the font checksum now */
- {
- dvi_buf[dvi_ptr]= font_check[f].b0;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= font_check[f].b1;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= font_check[f].b2;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= font_check[f].b3;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(font_check[f].b0);
+ dvi_out(font_check[f].b1);
+ dvi_out(font_check[f].b2);
+ dvi_out(font_check[f].b3);
dvi_four(font_size[f]);
- dvi_four(font_dsize[f]);
- {
+ dvi_four(font_dsize[f]);
/* long to unsigned char ... */
- dvi_buf[dvi_ptr]=
- (str_start[font_area[f]+ 1]- str_start[font_area[f]]);
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
+ dvi_out(length(font_area[f]));
/* long to unsigned char ... */
- dvi_buf[dvi_ptr]=
- (str_start[font_name[f]+ 1]- str_start[font_name[f]]);
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- register integer for_end;
- k = str_start[font_area[f]];
- for_end = str_start[font_area[f]+ 1]- 1;
- if (k <= for_end) do
- {
- dvi_buf[dvi_ptr]= str_pool[k];
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- while(k++ < for_end);
- }
- {
- register integer for_end;
- k = str_start[font_name[f]];
- for_end = str_start[font_name[f]+ 1]- 1;
- if (k <= for_end) do
- {
- dvi_buf[dvi_ptr]= str_pool[k];
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- while(k++ < for_end);
- }
+ dvi_out(length(font_name[f]));
+/* sec 0603 */
+ for (k = str_start[font_area[f]]; k <= str_start[font_area[f]+ 1] - 1; k++)
+ dvi_out(str_pool[k]);
+ for (k = str_start[font_name[f]]; k <= str_start[font_name[f]+ 1] - 1; k++)
+ dvi_out(str_pool[k]);
}
/* following needs access to dvi_buf=zdvibuf see coerce.h */
void zmovement(scaled w, eight_bits o)
q = get_node(3);
mem[q + 1].cint = w;
mem[q + 2].cint = dvi_offset + dvi_ptr;
- if (o == 157) /* 157 == down1 */
- {
+ if (o == 157) /* 157 == down1 */ {
mem[q].hh.v.RH = down_ptr;
down_ptr = q;
- }
- else { /* 143 == right1 */
-
+ } else { /* 143 == right1 */
mem[q].hh.v.RH = right_ptr;
right_ptr = q;
}
p = mem[q].hh.v.RH;
mstate = 0;
- while(p != 0){ /* while p<>null do l.12153 */
+ while (p != 0) { /* while p<>null do l.12153 */
if (mem[p + 1].cint == w)
switch(mstate + mem[p].hh.v.LH)
{case 3 :
mem[q].hh.v.LH = 3;
if (abs(w)>= 8388608L) /* 2^23 */
{
- {
- dvi_buf[dvi_ptr]= o + 3;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(o + 3);
dvi_four(w);
return;
}
if (abs(w)>= 32768L)
{
- {
- dvi_buf[dvi_ptr]= o + 2;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(o + 2);
if (w < 0)
w = w + 16777216L; /* 2^24 */
- {
-/* dvi_buf[dvi_ptr]= w / 65536L; */
-/* dvi_buf[dvi_ptr]=(w >> 16); */
- dvi_buf[dvi_ptr]= (unsigned char)(w >> 16);
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ //dvi_out(w / 65536L);
+ dvi_out((w >> 16));
/* w = w % 65536L; */
w = w & 65535L;
goto lab2;
}
if (abs(w)>= 128)
{
- {
- dvi_buf[dvi_ptr]= o + 1;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(o + 1);
if (w < 0)
w = w + 65536L;
goto lab2;
- }
- {
- dvi_buf[dvi_ptr]= o;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ }
+ dvi_out(o);
if (w < 0)
w = w + 256;
- goto lab1;
- lab2: {
-/* dvi_buf[dvi_ptr]= w / 256; */
-/* dvi_buf[dvi_ptr]=(w >> 8); */
- dvi_buf[dvi_ptr]= (unsigned char)(w >> 8);
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- lab1: {
-/* dvi_buf[dvi_ptr]= w % 256; */
- dvi_buf[dvi_ptr]= w & 255;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ goto lab1;
+lab2:
+ //dvi_out(w / 256);
+ dvi_out((w >> 8));
+lab1:
+ //dvi_out(w % 256);
+ dvi_out(w & 255);
return;
lab40: mem[q].hh.v.LH = mem[p].hh.v.LH;
if (mem[q].hh.v.LH == 1)
{
- {
- dvi_buf[dvi_ptr]= o + 4;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- while(mem[q].hh.v.RH != p){
-
+ dvi_out(o + 4);
+ while (mem[q].hh.v.RH != p) {
q = mem[q].hh.v.RH;
switch(mem[q].hh.v.LH)
{case 3 :
}
}
} else {
- {
- dvi_buf[dvi_ptr]= o + 9;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- while(mem[q].hh.v.RH != p){
-
+ dvi_out(o + 9);
+ while (mem[q].hh.v.RH != p) {
q = mem[q].hh.v.RH;
switch(mem[q].hh.v.LH)
{case 3 :
void prune_movements_(integer l)
{/* 30 10 */
halfword p;
- while(down_ptr != 0){ /* while down_ptr<>null do l.12206 */
-
+ while (down_ptr != 0) { /* while down_ptr<>null do l.12206 */
if (mem[down_ptr + 2].cint < l)
goto lab30;
p = down_ptr;
down_ptr = mem[p].hh.v.RH;
free_node(p, 3);
- }
- lab30: while(right_ptr != 0){ /* done: while right_ptr<>null do */
+ }
+lab30:
+ while (right_ptr != 0) { /* done: while right_ptr<>null do */
if (mem[right_ptr + 2].cint < l)
- return;
- p = right_ptr;
- right_ptr = mem[p].hh.v.RH;
- free_node(p, 3);
- }
-}
+ return;
+ p = right_ptr;
+ right_ptr = mem[p].hh.v.RH;
+ free_node(p, 3);
+ }
+}
/* following needs access to dvi_buf=zdvibuf see coerce.h */
void special_out_(halfword p)
{
}
#endif
}
- if ((pool_ptr - str_start[str_ptr])< 256) /* can use xxx1 ? */
+ if (cur_length < 256) /* can use xxx1 ? */
{
- {
- dvi_buf[dvi_ptr]= 239; /* xxx1 */
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
-/* long to unsigned char ... */
- dvi_buf[dvi_ptr]=(pool_ptr - str_start[str_ptr]);
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- }
- else { /* use xxx4 instead */
- {
- dvi_buf[dvi_ptr]= 242; /* xxx4 */
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- dvi_four((pool_ptr - str_start[str_ptr]));
+ dvi_out(239);
+/* long to unsigned char ... */
+ dvi_out(cur_length);
+ } else { /* use xxx4 instead */
+ dvi_out(242);
+ dvi_four(cur_length);
}
#ifdef IGNORED
register integer for_end;
k = str_start[str_ptr];
for_end = pool_ptr - 1;
- if (k <= for_end) do
- {
- dvi_buf[dvi_ptr]= str_pool[k];
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ if (k <= for_end) do
+ dvi_out(str_pool[k]);
while(k++ < for_end);
}
pool_ptr = str_start[str_ptr];
}
/* following needs access to dvi_buf=zdvibuf see coerce.h */
void hlist_out (void)
-{/* 21 13 14 15 */
+{
scaled baseline;
scaled leftedge;
scaled saveh, savev;
p = mem[thisbox + 5].hh.v.RH;
incr(cur_s);
if (cur_s > 0)
- {
- dvi_buf[dvi_ptr]= 141;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)
- dvi_swap();
- }
+ dvi_out(141);
if (cur_s > max_push)
max_push = cur_s;
saveloc = dvi_offset + dvi_ptr;
leftedge = cur_h;
/* while p<>null do l.12314 */
while(p != 0)
-lab21: if ((p >= hi_mem_min))
+lab21:
+ if ((p >= hi_mem_min))
{
if (cur_h != dvi_h)
{
dvi_v = cur_v;
}
do {
- f = mem[p].hh.b0;
- c = mem[p].hh.b1;
+ f = mem[p].hh.b0;
+ c = mem[p].hh.b1;
if (f != dvi_f)
{
- if (! font_used[f])
+ if (!font_used[f])
{
dvi_font_def(f);
- font_used[f]= true;
+ font_used[f] = true;
}
if (f <= 64)
- { /* fnt_num_0 --- fnt_num_63 */
- dvi_buf[dvi_ptr]= f + 170;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(f + 170); /* fnt_num_0 --- fnt_num_63 */
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
#ifdef INCREASEFONTS
else if (f <= 256){ /* if we allow greater than 256 fonts */
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
else { /* normal TeX 82 case */
#endif
- { /* fnt1 followed by f */
- dvi_buf[dvi_ptr]= 235;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= f - 1;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(235); /* fnt1 followed by f */
+ dvi_out(f - 1);
}
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
#ifdef INCREASEFONTS
else { /* fnt2 followed by f / 256, f % 256 */
- {
- dvi_buf[dvi_ptr]= 236;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= (f - 1) >> 8; /* top byte */
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= (f - 1) & 255; /* bottom byte */
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(236);
+ dvi_out(((f - 1) >> 8)); /* top byte */
+ dvi_out(((f - 1) & 255)); /* bottom byte */
}
#endif
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
dvi_f = f;
}
if (c >= 128)
- {
- dvi_buf[dvi_ptr]= 128;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= c;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- cur_h = cur_h + font_info[width_base[f]+ font_info[char_base[f]+ c
- ].qqqq.b0].cint;
+ dvi_out(128);
+ dvi_out(c);
+ cur_h = cur_h + font_info[width_base[f] + font_info[char_base[f] + c].qqqq.b0].cint;
p = mem[p].hh.v.RH;
} while(!(!(p >= hi_mem_min)));
dvi_h = cur_h;
- }
- else {
-
+ } else {
switch(mem[p].hh.b0)
{case 0 :
case 1 :
{
movement(cur_v - dvi_v, 157); /* 157 == down1 */
dvi_v = cur_v;
- }
- {
- dvi_buf[dvi_ptr]= 132;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ }
+ dvi_out(132);
dvi_four(rule_ht);
dvi_four(rule_wd);
cur_v = baseline;
p = mem[thisbox + 5].hh.v.RH;
incr(cur_s);
if (cur_s > 0)
- {
- dvi_buf[dvi_ptr]= 141;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ dvi_out(141);
if (cur_s > max_push)
max_push = cur_s;
saveloc = dvi_offset + dvi_ptr;
{
movement(cur_v - dvi_v, 157); /* 157 == down1 */
dvi_v = cur_v;
- }
- {
- dvi_buf[dvi_ptr]= 137;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ }
+ dvi_out(137);
dvi_four(rule_ht);
dvi_four(rule_wd);
}
show_box(p);
end_diagnostic(true);
}
- if ((mem[p + 3].cint > 1073741823L)|| /* 2^30 - 1 */
- (mem[p + 2].cint > 1073741823L)||
- (mem[p + 3].cint + mem[p + 2].cint +
- v_offset > 1073741823L)||
- (mem[p + 1].cint + h_offset > 1073741823L))
- {
+ if ((mem[p + 3].cint > 1073741823L) || /* 2^30 - 1 */
+ (mem[p + 2].cint > 1073741823L) ||
+ (mem[p + 3].cint + mem[p + 2].cint + v_offset > 1073741823L) ||
+ (mem[p + 1].cint + h_offset > 1073741823L)) {
print_err("Huge page cannot be shipped out");
help2("The page just created is more than 18 feet tall or",
"more than 18 feet wide, so I suspect something went wrong.");
error();
- if (tracing_output <= 0)
- {
+ if (tracing_output <= 0) {
begin_diagnostic();
print_nl("The following box has been deleted:");
show_box(p);
}
goto lab30;
}
- if (mem[p + 3].cint + mem[p + 2].cint + v_offset > max_v
-)
- max_v = mem[p + 3].cint + mem[p + 2].cint + v_offset;
+ if (mem[p + 3].cint + mem[p + 2].cint + v_offset > max_v)
+ max_v = mem[p + 3].cint + mem[p + 2].cint + v_offset;
if (mem[p + 1].cint + h_offset > max_h)
- max_h = mem[p + 1].cint + h_offset;
- dvi_h = 0;
- dvi_v = 0;
- cur_h = h_offset;
- dvi_f = 0;
- if (output_file_name == 0)
- {
- if (job_name == 0)open_log_file();
+ max_h = mem[p + 1].cint + h_offset;
+ dvi_h = 0;
+ dvi_v = 0;
+ cur_h = h_offset;
+ dvi_f = 0;
+ if (output_file_name == 0) {
+ if (job_name == 0)
+ open_log_file();
pack_job_name(788); /* .dvi */
- while(! b_open_out(dvi_file)) {
- prompt_file_name(789, 788); /* file name for output .dvi */
+ while(!b_open_out(dvi_file)) {
+ prompt_file_name(789, 788); /* file name for output .dvi */
+ }
+ output_file_name = b_make_name_string(dvi_file);
}
- output_file_name = b_make_name_string(dvi_file);
- }
- if (total_pages == 0)
- {
- {
- dvi_buf[dvi_ptr]= 247;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= 2;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ if (total_pages == 0) {
+ dvi_out(247);
+ dvi_out(2);
/********BINDING WITH LIBHARU*********/
/*
yandy_pdf = HPDF_New(error_handler, NULL);
/********BINDING WITH LIBHARU*********/
dvi_four(25400000L); /* magic DVI scale factor */
dvi_four(473628672L); /* 7227 * 65536 */
- prepare_mag();
- dvi_four(mag);
- old_setting = selector;
- selector = 21;
+ prepare_mag();
+ dvi_four(mag);
+ old_setting = selector;
+ selector = 21;
print_string(" TeX output ");
- print_int(year);
+ print_int(year);
print_char('.');
- print_two(month);
+ print_two(month);
print_char('.');
print_two(day);
print_char(':');
- print_two(tex_time / 60);
- print_two(tex_time % 60);
- selector = old_setting;
- {
-/* long to unsigned char ... */
- dvi_buf[dvi_ptr]=(pool_ptr - str_start[str_ptr]);
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- register integer for_end;
- s = str_start[str_ptr];
- for_end = pool_ptr - 1;
- if (s <= for_end) do
- {
- dvi_buf[dvi_ptr]= str_pool[s];
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- while(s++ < for_end);
- }
+ print_two(tex_time / 60);
+ print_two(tex_time % 60);
+ selector = old_setting;
+/* long to unsigned char ... */
+ dvi_out(cur_length);
+ for (s = str_start[str_ptr]; s <= pool_ptr - 1; s++) dvi_out(str_pool[s]);
pool_ptr = str_start[str_ptr];
} // end of if total_pages == 0
- pageloc = dvi_offset + dvi_ptr;
- {
- dvi_buf[dvi_ptr]= 139;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- register integer for_end;
- k = 0;
- for_end = 9;
- if (k <= for_end) do
- dvi_four(eqtb[(hash_size + 3218) + k].cint);
- while(k++ < for_end);
- }
- dvi_four(last_bop);
- last_bop = pageloc;
- cur_v = mem[p + 3].cint + v_offset;
- temp_ptr = p;
- if (mem[p].hh.b0 == 1)vlist_out();
- else hlist_out();
- {
- dvi_buf[dvi_ptr]= 140;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- incr(total_pages);
- cur_s = -1;
- lab30:;
+ pageloc = dvi_offset + dvi_ptr;
+ dvi_out(139);
+ for (k = 0; k <= 9; k++) dvi_four(eqtb[(hash_size + 3218) + k].cint);
+ dvi_four(last_bop);
+ last_bop = pageloc;
+ cur_v = mem[p + 3].cint + v_offset;
+ temp_ptr = p;
+ if (mem[p].hh.b0 == 1)
+ vlist_out();
+ else
+ hlist_out();
+ dvi_out(140);
+ incr(total_pages);
+ cur_s = -1;
+lab30:;
if (tracing_output <= 0)
- print_char(']');
- dead_cycles = 0;
+ print_char(']');
+ dead_cycles = 0;
#ifndef _WINDOWS
- fflush(stdout);
+ fflush(stdout);
#endif
;
#ifdef STAT
- if (tracing_stats > 1)
- {
+ if (tracing_stats > 1) {
print_nl("Memory usage before: ");
- print_int(var_used);
+ print_int(var_used);
print_char('&');
- print_int(dyn_used);
+ print_int(dyn_used);
print_char(';');
- }
+ }
#endif /* STAT */
- flush_node_list(p);
+ flush_node_list(p);
;
#ifdef STAT
- if (tracing_stats > 1)
- {
+ if (tracing_stats > 1) {
print_string("after");
- print_int(var_used);
+ print_int(var_used);
print_char('&');
- print_int(dyn_used);
+ print_int(dyn_used);
print_string("still utouched");
print_int(hi_mem_min - lo_mem_max - 1); /* somewhat inaccurate free mem */
- print_ln();
+ print_ln();
}
#endif /* STAT */
}
void scan_spec_(group_code c, bool threecodes)
-{/* 40 */
- integer s;
- char speccode;
+{
+ integer s;
+ char speccode;
if (threecodes)
- s = save_stack[save_ptr + 0].cint;
- if (scan_keyword("to")) /* to */
- speccode = 0;
- else if (scan_keyword("spread")) /* spread */
- speccode = 1;
+ s = save_stack[save_ptr + 0].cint;
+ if (scan_keyword("to"))
+ speccode = 0;
+ else if (scan_keyword("spread"))
+ speccode = 1;
else {
- speccode = 1;
- cur_val = 0;
- goto lab40;
- }
- scan_dimen(false, false, false);
- lab40: if (threecodes)
- {
+ speccode = 1;
+ cur_val = 0;
+ goto lab40;
+ }
+ scan_dimen(false, false, false);
+lab40:
+ if (threecodes) {
save_stack[save_ptr + 0].cint = s; /* s may be used without ... */
- incr(save_ptr);
- }
- save_stack[save_ptr + 0].cint = speccode;
- save_stack[save_ptr + 1].cint = cur_val;
- save_ptr = save_ptr + 2;
- new_save_level(c);
- scan_left_brace();
-}
+ incr(save_ptr);
+ }
+ save_stack[save_ptr + 0].cint = speccode;
+ save_stack[save_ptr + 1].cint = cur_val;
+ save_ptr = save_ptr + 2;
+ new_save_level(c);
+ scan_left_brace();
+}
halfword hpack_(halfword p, scaled w, small_number m)
-{/* 21 50 10 */ register halfword Result;
- halfword r;
- halfword q;
- scaled h, d, x;
- scaled s;
- halfword g;
+{
+ register halfword Result;
+ halfword r;
+ halfword q;
+ scaled h, d, x;
+ scaled s;
+ halfword g;
/* glue_ord o; */
int o; /* 95/Jan/7 */
- internal_font_number f;
- ffourquarters i;
- eight_bits hd;
- last_badness = 0;
- r = get_node(7);
- mem[r].hh.b0 = 0;
- mem[r].hh.b1 = 0;
- mem[r + 4].cint = 0;
- q = r + 5;
- mem[q].hh.v.RH = p;
- h = 0;
- d = 0;
- x = 0;
- totalstretch[0]= 0;
- totalshrink[0]= 0;
- totalstretch[1]= 0;
- totalshrink[1]= 0;
- totalstretch[2]= 0;
- totalshrink[2]= 0;
- totalstretch[3]= 0;
- totalshrink[3]= 0;
+ internal_font_number f;
+ ffourquarters i;
+ eight_bits hd;
+ last_badness = 0;
+ r = get_node(7);
+ mem[r].hh.b0 = 0;
+ mem[r].hh.b1 = 0;
+ mem[r + 4].cint = 0;
+ q = r + 5;
+ mem[q].hh.v.RH = p;
+ h = 0;
+ d = 0;
+ x = 0;
+ total_stretch[0] = 0;
+ total_shrink[0] = 0;
+ total_stretch[1] = 0;
+ total_shrink[1] = 0;
+ total_stretch[2] = 0;
+ total_shrink[2] = 0;
+ total_stretch[3] = 0;
+ total_shrink[3] = 0;
while (p != 0) { /* while p<>null do l.12862 */
lab21:
while ((p >= hi_mem_min)) {
f = mem[p].hh.b0;
- i = font_info[char_base[f]+ mem[p].hh.b1].qqqq;
+ i = font_info[char_base[f] + mem[p].hh.b1].qqqq;
hd = i.b1;
- x = x + font_info[width_base[f]+ i.b0].cint;
- s = font_info[height_base[f]+(hd)/ 16].cint;
+ x = x + font_info[width_base[f] + i.b0].cint;
+ s = font_info[height_base[f] + (hd) / 16].cint;
if (s > h)
h = s;
s = font_info[depth_base[f]+(hd)% 16].cint;
if (s > d)
d = s;
p = mem[p].hh.v.RH;
- }
+ }
if (p != 0) /* if p<>null then l.12886 */
{
switch (mem[p].hh.b0)
g = mem[p + 1].hh.v.LH;
x = x + mem[g + 1].cint;
o = mem[g].hh.b0;
- totalstretch[o]= totalstretch[o]+ mem[g + 2].cint;
+ total_stretch[o]= total_stretch[o]+ mem[g + 2].cint;
o = mem[g].hh.b1;
- totalshrink[o]= totalshrink[o]+ mem[g + 3].cint;
+ total_shrink[o]= total_shrink[o]+ mem[g + 3].cint;
if (mem[p].hh.b1 >= 100) {
g = mem[p + 1].hh.v.RH;
if (mem[g + 3].cint > h)
mem[r + 6].gr = 0.0;
goto lab10;
} else if (x > 0) {
- if (totalstretch[3] != 0)
+ if (total_stretch[3] != 0)
o = 3;
- else if (totalstretch[2] != 0)
+ else if (total_stretch[2] != 0)
o = 2;
- else if (totalstretch[1] != 0)
+ else if (total_stretch[1] != 0)
o = 1;
else
o = 0;
mem[r + 5].hh.b1 = o;
mem[r + 5].hh.b0 = 1;
/* if total_stretch[o]<>0 then glue_set(r):=... l.12982 */
- if (totalstretch[o]!= 0)
- mem[r + 6].gr = x / ((double) totalstretch[o]);
+ if (total_stretch[o]!= 0)
+ mem[r + 6].gr = x / ((double) total_stretch[o]);
else {
mem[r + 5].hh.b0 = 0;
mem[r + 6].gr = 0.0;
if (o == 0)
if (mem[r + 5].hh.v.RH != 0)
{
- last_badness = badness(x, totalstretch[0]);
+ last_badness = badness(x, total_stretch[0]);
if (last_badness > hbadness) {
print_ln();
if (last_badness > 100)
}
goto lab10;
} else {
- if (totalshrink[3] != 0)
+ if (total_shrink[3] != 0)
o = 3;
- else if (totalshrink[2] != 0)
+ else if (total_shrink[2] != 0)
o = 2;
- else if (totalshrink[1] != 0)
+ else if (total_shrink[1] != 0)
o = 1;
else
o = 0;
mem[r + 5].hh.b1 = o;
mem[r + 5].hh.b0 = 2;
- if (totalshrink[o] != 0)
- mem[r + 6].gr =(- (integer) x) / ((double) totalshrink[o]);
+ if (total_shrink[o] != 0)
+ mem[r + 6].gr =(- (integer) x) / ((double) total_shrink[o]);
else {
mem[r + 5].hh.b0 = 0;
mem[r + 6].gr = 0.0;
}
/* if (total_shrink[o]<-x)and(o=normal)and(list_ptr(r)<>null) then l.13946 */
- if ((totalshrink[o]< - (integer) x) && (o == 0) && (mem[r + 5].hh.v.RH != 0)) {
+ if ((total_shrink[o]< - (integer) x) && (o == 0) && (mem[r + 5].hh.v.RH != 0)) {
last_badness = 1000000L;
/* set_glue_ratio_one(glue_set(r)); {use the maximum shrinkage} */
mem[r + 6].gr = 1.0;
/* if (-x-total_shrink[normal]>hfuzz)or(hbadness<100) then */
- if ((- (integer) x - totalshrink[0] > hfuzz) ||
+ if ((- (integer) x - total_shrink[0] > hfuzz) ||
(hbadness < 100)) {
if ((overfull_rule > 0) &&
- (- (integer) x - totalshrink[0] > hfuzz)) {
+ (- (integer) x - total_shrink[0] > hfuzz)) {
while(mem[q].hh.v.RH != 0)q = mem[q].hh.v.RH;
mem[q].hh.v.RH = new_rule();
mem[mem[q].hh.v.RH + 1].cint = overfull_rule;
}
print_ln();
print_nl("Overfull \\hbox(");
- print_scaled(- (integer) x - totalshrink[0]);
+ print_scaled(- (integer) x - total_shrink[0]);
print_string("pt too wide");
overfull_hbox++; /* 1996/Feb/9 */
goto lab50;
}
} else if (o == 0)
if (mem[r + 5].hh.v.RH != 0) {
- last_badness = badness(- (integer) x, totalshrink[0]);
+ last_badness = badness(- (integer) x, total_shrink[0]);
if (last_badness > hbadness) {
print_ln();
print_nl("Tight \\hbox (badness ");
else {
if (pack_begin_line != 0) {
if (pack_begin_line > 0)
- print_string(")in paragraph at lines ");
+ print_string(") in paragraph at lines ");
else
- print_string(")in alignment at lines ");
+ print_string(") in alignment at lines ");
print_int(abs(pack_begin_line));
print_string("--");
} else print_string(")detected at line ");
w = 0;
d = 0;
x = 0;
- totalstretch[0] = 0;
- totalshrink[0] = 0;
- totalstretch[1] = 0;
- totalshrink[1] = 0;
- totalstretch[2] = 0;
- totalshrink[2] = 0;
- totalstretch[3] = 0;
- totalshrink[3] = 0;
+ total_stretch[0] = 0;
+ total_shrink[0] = 0;
+ total_stretch[1] = 0;
+ total_shrink[1] = 0;
+ total_stretch[2] = 0;
+ total_shrink[2] = 0;
+ total_stretch[3] = 0;
+ total_shrink[3] = 0;
while (p != 0) {
if ((p >= hi_mem_min)) {
confusion("vpack");
g = mem[p + 1].hh.v.LH;
x = x + mem[g + 1].cint;
o = mem[g].hh.b0;
- totalstretch[o] = totalstretch[o]+ mem[g + 2].cint;
+ total_stretch[o] = total_stretch[o]+ mem[g + 2].cint;
o = mem[g].hh.b1;
- totalshrink[o]= totalshrink[o]+ mem[g + 3].cint;
+ total_shrink[o]= total_shrink[o]+ mem[g + 3].cint;
if (mem[p].hh.b1 >= 100) {
g = mem[p + 1].hh.v.RH;
if (mem[g + 1].cint > w)
mem[r + 6].gr = 0.0;
goto lab10;
} else if (x > 0) {
- if (totalstretch[3] != 0)
+ if (total_stretch[3] != 0)
o = 3;
- else if (totalstretch[2]!= 0)
+ else if (total_stretch[2]!= 0)
o = 2;
- else if (totalstretch[1]!= 0)
+ else if (total_stretch[1]!= 0)
o = 1;
else
o = 0;
mem[r + 5].hh.b1 = o;
mem[r + 5].hh.b0 = 1;
- if (totalstretch[o] != 0)
- mem[r + 6].gr = x / ((double) totalstretch[o]);
+ if (total_stretch[o] != 0)
+ mem[r + 6].gr = x / ((double) total_stretch[o]);
else {
mem[r + 5].hh.b0 = 0;
mem[r + 6].gr = 0.0;
}
if (o == 0)
if (mem[r + 5].hh.v.RH != 0) {
- last_badness = badness(x, totalstretch[0]);
+ last_badness = badness(x, total_stretch[0]);
if (last_badness > vbadness) {
print_ln();
if (last_badness > 100)
}
goto lab10;
} else {
- if (totalshrink[3] != 0)
+ if (total_shrink[3] != 0)
o = 3;
- else if (totalshrink[2] != 0)
+ else if (total_shrink[2] != 0)
o = 2;
- else if (totalshrink[1]!= 0)
+ else if (total_shrink[1]!= 0)
o = 1;
else
o = 0;
mem[r + 5].hh.b1 = o;
mem[r + 5].hh.b0 = 2;
- if (totalshrink[o]!= 0)
- mem[r + 6].gr =(- (integer) x)/ ((double) totalshrink[o]);
+ if (total_shrink[o]!= 0)
+ mem[r + 6].gr =(- (integer) x)/ ((double) total_shrink[o]);
else {
mem[r + 5].hh.b0 = 0;
mem[r + 6].gr = 0.0;
}
/* if (total_shrink[o]<-x)and(o=normal)and(list_ptr(r)<>null) then l.13046 */
- if ((totalshrink[o] < - (integer) x) && (o == 0) && (mem[r + 5].hh.v.RH != 0)) {
+ if ((total_shrink[o] < - (integer) x) && (o == 0) && (mem[r + 5].hh.v.RH != 0)) {
last_badness = 1000000L;
mem[r + 6].gr = 1.0;
- if ((- (integer) x - totalshrink[0] > eqtb[(hash_size + 3739)].cint) ||
+ if ((- (integer) x - total_shrink[0] > eqtb[(hash_size + 3739)].cint) ||
(vbadness < 100)) {
print_ln();
print_nl("Overfull \\vbox(");
- print_scaled(- (integer) x - totalshrink[0]);
+ print_scaled(- (integer) x - total_shrink[0]);
print_string("pt too high");
overfull_vbox++; /* 1996/Feb/9 */
goto lab50;
/* else if o=normal then if list_ptr(r)<>null then l.13052 */
else if (o == 0)
if (mem[r + 5].hh.v.RH != 0) {
- last_badness = badness(- (integer) x, totalshrink[0]);
+ last_badness = badness(- (integer) x, total_shrink[0]);
if (last_badness > vbadness) {
print_ln();
print_nl("Tight \\vbox (badness ");
print_string(") in alignment at lines ");
print_int(abs(pack_begin_line));
print_string("--");
- } else print_string(")detected at line ");
+ } else print_string(") detected at line ");
print_int(line);
print_ln();
}
return Result;
}
void append_to_vlist_(halfword b)
-{
- scaled d;
- halfword p;
+{
+ scaled d;
+ halfword p;
if (cur_list.aux_field.cint > ignore_depth) {
d = mem[eqtb[(hash_size + 783)].hh.v.RH + 1].cint - cur_list.aux_field.cint - mem[b + 3].cint;
if (d < line_skip_limit)
lab30: scanner_status = 0;
new_save_level(6);
/* if every_cr<>null then begin_token_list(every_cr,every_cr_text); l.15665 */
- if (eqtb[(hash_size + 1320)].hh.v.RH != 0)/* everycr */
- begin_token_list(eqtb[(hash_size + 1320)].hh.v.RH, 13);
+ if (every_cr != 0)/* everycr */
+ begin_token_list(every_cr, 13);
align_peek();
}
void init_span_ (halfword p)
}
mem[p].hh.b0 = 13;
mem[p + 6].cint = 0;
- if (eqtb[(hash_size + 1320)].hh.v.RH != 0)/* everycr */
- begin_token_list(eqtb[(hash_size + 1320)].hh.v.RH, 13);
+ if (every_cr != 0)/* everycr */
+ begin_token_list(every_cr, 13);
align_peek();
}
void fin_align (void)
mem[cur_align + 1].cint = w;
mem[u].hh.b0 = 13;
mem[u].hh.b1 = n;
- if (totalstretch[3]!= 0)
+ if (total_stretch[3]!= 0)
o = 3;
- else if (totalstretch[2]!= 0)
+ else if (total_stretch[2]!= 0)
o = 2;
- else if (totalstretch[1]!= 0)
+ else if (total_stretch[1]!= 0)
o = 1;
else o = 0;
mem[u + 5].hh.b1 = o;
- mem[u + 6].cint = totalstretch[o];
- if (totalshrink[3]!= 0)
+ mem[u + 6].cint = total_stretch[o];
+ if (total_shrink[3]!= 0)
o = 3;
- else if (totalshrink[2]!= 0)
+ else if (total_shrink[2]!= 0)
o = 2;
- else if (totalshrink[1]!= 0)
+ else if (total_shrink[1]!= 0)
o = 1;
else o = 0;
mem[u + 5].hh.b0 = o;
- mem[u + 4].cint = totalshrink[o];
+ mem[u + 4].cint = total_shrink[o];
pop_nest();
mem[tail].hh.v.RH = u;
tail = u;
oldl = l;
if (l > last_special_line)
linewidth = second_width;
- else if (eqtb[(hash_size + 1312)].hh.v.RH == 0)
+ else if (par_shape_ptr == 0)
linewidth = first_width;
else
- linewidth = mem[eqtb[(hash_size + 1312)].hh.v.RH + 2 * l].cint;
+ linewidth = mem[par_shape_ptr + 2 * l].cint;
}
}
}
if (curline > last_special_line) {
curwidth = second_width;
curindent = second_indent;
- } else if (eqtb[(hash_size + 1312)].hh.v.RH == 0) {
+ } else if (par_shape_ptr == 0) {
curwidth = first_width;
curindent = first_indent;
} else {
- curwidth = mem[eqtb[(hash_size + 1312)].hh.v.RH + 2 * curline].cint;
- curindent = mem[eqtb[(hash_size + 1312)].hh.v.RH + 2 * curline - 1].cint;
+ curwidth = mem[par_shape_ptr + 2 * curline].cint;
+ curindent = mem[par_shape_ptr + 2 * curline - 1].cint;
}
adjust_tail = adjust_head;
just_box = hpack(q, curwidth, 0);
k = hyph_word[h];
if (k == 0)
goto lab45;
- if ((str_start[k + 1]- str_start[k])< hn)
+ if (length(k) < hn)
goto lab45;
- if ((str_start[k + 1]- str_start[k])== hn)
+ if (length(k) == hn)
{
j = 1;
u = str_start[k];
return; // abort_flag set
}
incr(hyph_count);
- while(hyph_word[h]!= 0){
-
- k = hyph_word[h];
- if ((str_start[k + 1]- str_start[k])<(str_start[s + 1
- ]- str_start[s]))
- goto lab40;
- if ((str_start[k + 1]- str_start[k])>(str_start[s + 1
- ]- str_start[s]))
- goto lab45;
+ while (hyph_word[h]!= 0) {
+ k = hyph_word[h];
+ if (length(k) < length(s))
+ goto lab40;
+ if (length(k) > length(s))
+ goto lab45;
u = str_start[k];
v = str_start[s];
do {
incr(mem[cur_mark[0]].hh.v.LH);
}
/* if output_routine<>null then */
- if (eqtb[(hash_size + 1313)].hh.v.RH != 0)
+ if (output_routine != 0)
if (dead_cycles >= max_dead_cycles)
{
print_err("Output loop---");
mode = -1;
cur_list.aux_field.cint = ignore_depth;
mode_line = - (integer) line;
- begin_token_list(eqtb[(hash_size + 1313)].hh.v.RH, 6); /* output */
+ begin_token_list(output_routine, 6); /* output */
new_save_level(8);
normal_paragraph();
scan_left_brace();
{
back_input();
cur_tok = 804;
- print_err("Proceed; I'll discard its present contents.");
+ print_err("Missing $ inserted");
help2("I've inserted a begin-math/end-math symbol since I think",
"you left one out. Proceed, with fingers crossed.");
ins_error();
eq_word_define((hash_size + 3747), 0);
if (hang_after != 1)
eq_word_define((hash_size + 3204), 1);
- if (eqtb[(hash_size + 1312)].hh.v.RH != 0)
+ if (par_shape_ptr != 0)
eq_define((hash_size + 1312), 118, 0);
}
/* sec 1075 */
if (k == 1)
{
cur_list.aux_field.cint = ignore_depth;
- if (eqtb[(hash_size + 1318)].hh.v.RH != 0)/* everyhbox */
- begin_token_list(eqtb[(hash_size + 1318)].hh.v.RH, 11);
+ if (every_vbox != 0)
+ begin_token_list(every_vbox, 11);
} else {
space_factor = 1000;
- if (eqtb[(hash_size + 1317)].hh.v.RH != 0)/* everyhbox */
- begin_token_list(eqtb[(hash_size + 1317)].hh.v.RH, 10);
+ if (every_hbox != 0)
+ begin_token_list(every_hbox, 10);
}
return;
}
mem[head].hh.v.RH = tail;
mem[tail + 1].cint = par_indent;
}
- if (eqtb[(hash_size + 1314)].hh.v.RH != 0) /* everypar */
- begin_token_list(eqtb[(hash_size + 1314)].hh.v.RH, 7);
+ if (every_par != 0)
+ begin_token_list(every_par, 7);
if (nest_ptr == 1){
build_page();
}
}
lab30:;
}
- if (eqtb[(hash_size + 1312)].hh.v.RH == 0)
+ if (par_shape_ptr == 0)
if ((hang_indent != 0) &&
(((hang_after >= 0) &&
(prev_graf + 2 > hang_after)) ||(prev_graf + 1 < - (integer) hang_after))) {
s = 0;
}
else {
- n = mem[eqtb[(hash_size + 1312)].hh.v.RH].hh.v.LH;
+ n = mem[par_shape_ptr].hh.v.LH;
if (prev_graf + 2 >= n)
- p = eqtb[(hash_size + 1312)].hh.v.RH + 2 * n;
+ p = par_shape_ptr + 2 * n;
else
- p = eqtb[(hash_size + 1312)].hh.v.RH + 2 *(prev_graf + 2);
+ p = par_shape_ptr + 2 *(prev_graf + 2);
s = mem[p - 1].cint;
l = mem[p].cint;
}
eq_word_define((hash_size + 3743), w);
eq_word_define((hash_size + 3744), l);
eq_word_define((hash_size + 3745), s);
- if (eqtb[(hash_size + 1316)].hh.v.RH != 0)/* everydisplay */
- begin_token_list(eqtb[(hash_size + 1316)].hh.v.RH, 9);
+ if (every_display != 0)/* everydisplay */
+ begin_token_list(every_display, 9);
if (nest_ptr == 1) {
build_page();
}
{
push_math(15);
eq_word_define((hash_size + 3207), -1);
- if (eqtb[(hash_size + 1315)].hh.v.RH != 0)/* everymath */
- begin_token_list(eqtb[(hash_size + 1315)].hh.v.RH, 8);
+ if (every_math != 0)/* everymath */
+ begin_token_list(every_math, 8);
}
}
}
{
push_math(15);
eq_word_define((hash_size + 3207), -1);
- if (eqtb[(hash_size + 1315)].hh.v.RH != 0)/* everymath */
- begin_token_list(eqtb[(hash_size + 1315)].hh.v.RH, 8);
+ if (every_math != 0)/* everymath */
+ begin_token_list(every_math, 8);
}
}
/* sec 1151 */
scan_delimiter(lig_trick, false);
}
if (c % 3 == 0)
- scan_dimen(false, false, false);
- print_err("Ambiguous; you need another { and }");
- help3("I'm ignoring this fraction specification, since I don't",
- "know whether a construction like `x \\over y \\over z'",
- "means `{x \\over y} \\over z' or `x \\over {y \\over z}'.");
- error();
- }
- else {
-
- cur_list.aux_field.cint = get_node(6);
- mem[cur_list.aux_field.cint].hh.b0 = 25;
- mem[cur_list.aux_field.cint].hh.b1 = 0;
- mem[cur_list.aux_field.cint + 2].hh.v.RH = 3;
- mem[cur_list.aux_field.cint + 2].hh.v.LH = mem[head]
- .hh.v.RH;
- mem[cur_list.aux_field.cint + 3].hh = empty_field;
- mem[cur_list.aux_field.cint + 4].qqqq = null_delimiter;
- mem[cur_list.aux_field.cint + 5].qqqq = null_delimiter;
- mem[head].hh.v.RH = 0;
- tail = head;
- if (c >= 3)
- {
- scan_delimiter(cur_list.aux_field.cint + 4, false);
- scan_delimiter(cur_list.aux_field.cint + 5, false);
- }
+ scan_dimen(false, false, false);
+ print_err("Ambiguous; you need another { and }");
+ help3("I'm ignoring this fraction specification, since I don't",
+ "know whether a construction like `x \\over y \\over z'",
+ "means `{x \\over y} \\over z' or `x \\over {y \\over z}'.");
+ error();
+ } else {
+ cur_list.aux_field.cint = get_node(6);
+ mem[cur_list.aux_field.cint].hh.b0 = 25;
+ mem[cur_list.aux_field.cint].hh.b1 = 0;
+ mem[cur_list.aux_field.cint + 2].hh.v.RH = 3;
+ mem[cur_list.aux_field.cint + 2].hh.v.LH = mem[head].hh.v.RH;
+ mem[cur_list.aux_field.cint + 3].hh = empty_field;
+ mem[cur_list.aux_field.cint + 4].qqqq = null_delimiter;
+ mem[cur_list.aux_field.cint + 5].qqqq = null_delimiter;
+ mem[head].hh.v.RH = 0;
+ tail = head;
+ if (c >= 3) {
+ scan_delimiter(cur_list.aux_field.cint + 4, false);
+ scan_delimiter(cur_list.aux_field.cint + 5, false);
+ }
switch(c % 3)
- {case 0 :
+ {
+ case 0:
{
- scan_dimen(false, false, false);
- mem[cur_list.aux_field.cint + 1].cint = cur_val;
- }
- break;
- case 1 :
+ scan_dimen(false, false, false);
+ mem[cur_list.aux_field.cint + 1].cint = cur_val;
+ }
+ break;
+ case 1:
mem[cur_list.aux_field.cint + 1].cint = 1073741824L; /* 2^30 */
- break;
- case 2 :
- mem[cur_list.aux_field.cint + 1].cint = 0;
- break;
- }
- }
+ break;
+ case 2:
+ mem[cur_list.aux_field.cint + 1].cint = 0;
+ break;
+ }
+ }
}
/* sec 1191 */
void math_left_right (void)
small_number t;
halfword p;
t = cur_chr;
- if ((t == 31)&&(cur_group != 16))
- {
- if (cur_group == 15)
- {
+ if ((t == 31) && (cur_group != 16)) {
+ if (cur_group == 15) {
scan_delimiter(lig_trick, false);
- print_err("Extra ");
+ print_err("Extra ");
print_esc("right");
- help1("I'm ignoring a \\right that had no matching \\left.");
- error();
- }
- else {
- off_save();
- }
- }
- else {
-
- p = new_noad();
- mem[p].hh.b0 = t;
- scan_delimiter(p + 1, false);
- if (t == 30)
- {
- push_math(16);
- mem[head].hh.v.RH = p;
- tail = p;
- }
- else {
-
- p = fin_mlist(p);
- unsave();
+ help1("I'm ignoring a \\right that had no matching \\left.");
+ error();
+ } else {
+ off_save();
+ }
+ } else {
+ p = new_noad();
+ mem[p].hh.b0 = t;
+ scan_delimiter(p + 1, false);
+ if (t == 30) {
+ push_math(16);
+ mem[head].hh.v.RH = p;
+ tail = p;
+ } else {
+ p = fin_mlist(p);
+ unsave();
{
- mem[tail].hh.v.RH = new_noad();
- tail = mem[tail].hh.v.RH;
- }
- mem[tail].hh.b0 = 23;
- mem[tail + 1].hh.v.RH = 3;
- mem[tail + 1].hh.v.LH = p;
- }
- }
+ mem[tail].hh.v.RH = new_noad();
+ tail = mem[tail].hh.v.RH;
+ }
+ mem[tail].hh.b0 = 23;
+ mem[tail + 1].hh.v.RH = 3;
+ mem[tail + 1].hh.v.LH = p;
+ }
+ }
}
/* sec 1194 */
void after_math (void)
}
if (w + q > z)
{
- if ((e != 0)&&((w - totalshrink[0]+ q <= z)||(totalshrink
- [1]!= 0)||(totalshrink[2]!= 0)||(totalshrink[3]!= 0)
+ if ((e != 0)&&((w - total_shrink[0]+ q <= z)||(total_shrink
+ [1]!= 0)||(total_shrink[2]!= 0)||(total_shrink[3]!= 0)
))
{
free_node(b, 7);
}
/* sec 1200 */
void resume_after_display (void)
-{
-
- if (cur_group != 15){
+{
+ if (cur_group != 15) {
confusion("display");
return; // abort_flag set
}
- unsave();
- prev_graf = prev_graf + 3;
- push_nest();
- mode = 102;
- space_factor = 1000;
+ unsave();
+ prev_graf = prev_graf + 3;
+ push_nest();
+ mode = 102;
+ space_factor = 1000;
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
/* was clang = 0; etc in 3.141 new stuff follows */
if (language <= 0)
- cur_lang = 0;
+ cur_lang = 0;
else if (language > 255)
- cur_lang = 0;
- else cur_lang = language;
- clang = cur_lang;
+ cur_lang = 0;
+ else cur_lang = language;
+ clang = cur_lang;
prev_graf =(norm_min(left_hyphen_min) * 64 +
norm_min(right_hyphen_min)) * 65536L + cur_lang;
/* eqtb ??? hash_size ? hash_size + hash_extra ? norm_min etc */
get_x_token();
if (cur_cmd != 10) back_input();
}
- if (nest_ptr == 1){
+ if (nest_ptr == 1) {
build_page();
}
}
/* sec 1215 */
void get_r_token (void)
-{/* 20 */
+{
lab20:
do {
get_token();
- } while(!(cur_tok != 2592));
+ } while (!(cur_tok != 2592));
/* if ((cur_cs == 0)||(cur_cs > (hash_size + 514))) */ /* 95/Jan/10 */
- if ((cur_cs == 0)||(cur_cs > (hash_size + hash_extra + 514))) {
- print_err("Missing control sequence inserted");
- help5("Please don't say `\\def cs{...}', say `\\def\\cs{...}'.",
- "I've inserted an inaccessible control sequence so that your",
- "definition will be completed without mixing me up too badly.",
- "You can recover graciously from this error, if you're",
- "careful; see exercise 27.2 in The TeXbook.");
+ if ((cur_cs == 0) || (cur_cs > (hash_size + hash_extra + 514))) {
+ print_err("Missing control sequence inserted");
+ help5("Please don't say `\\def cs{...}', say `\\def\\cs{...}'.",
+ "I've inserted an inaccessible control sequence so that your",
+ "definition will be completed without mixing me up too badly.",
+ "You can recover graciously from this error, if you're",
+ "careful; see exercise 27.2 in The TeXbook.");
if (cur_cs == 0)
- back_input();
+ back_input();
/* cur_tok = (hash_size + 4609); */
/* cur_tok = (hash_size + 4095 + 514); */
cur_tok = (hash_size + hash_extra + 4095 + 514); /* 96/Jan/10 */
- ins_error();
- goto lab20;
- }
+ ins_error();
+ goto lab20;
+ }
}
/* sec 1229 */
void trap_zero_glue (void)
{
- if ((mem[cur_val + 1].cint == 0)&&(mem[cur_val + 2].cint == 0)
- &&(mem[cur_val + 3].cint == 0))
- {
+ if ((mem[cur_val + 1].cint == 0) && (mem[cur_val + 2].cint == 0) &&
+ (mem[cur_val + 3].cint == 0)) {
incr(mem[0].hh.v.RH); /* mem[mem_bot]? */ /* mem[null]? */
- delete_glue_ref(cur_val);
- cur_val = 0;
- }
+ delete_glue_ref(cur_val);
+ cur_val = 0;
+ }
}
/* sec 1236 */
void do_register_command_ (small_number a)
lab40:;
if (q == 89)
scan_optional_equals();
- else if (scan_keyword("by")) /* by */
-;
+ else if (scan_keyword("by"));
arith_error = false;
if (q < 91)
if (p < 2)
name_in_progress = false;
flushablestring = str_ptr - 1;
- if (trace_flag) { /* debugging stuff only 98/Oct/5 */
+ if (trace_flag) { /* debugging stuff only 98/Oct/5 */
int i, k1, k2, l1, l2;
char *sch=log_line;
k1 = str_start[cur_area];
k2 = str_start[cur_name];
- l1 = str_start[cur_area + 1] - str_start[cur_area];
- l2 = str_start[cur_name + 1] - str_start[cur_name];
+ l1 = length(cur_area);
+ l2 = length(cur_name);
show_char('\n');
show_line("FONT ", 0);
for (i = 0; i < l1; i++) {
/* if str_eq_str(font_name[f],cur_name) ^ str_eq_str(font_area[f],cur_area) */
if (str_eq_str(font_name[f], cur_name)&&
str_eq_str(font_area[f], cur_area)) {
- if (cur_name == flushablestring){
- {
- decr(str_ptr);
- pool_ptr = str_start[str_ptr];
- }
+ if (cur_name == flushablestring) {
+ flush_string();
cur_name = font_name[f];
}
/* if (ignore_frozen) continue; */ /* 98/Oct/5 */
{
print_ln();
interaction = cur_chr;
- if (interaction == 0) selector = 16;
+ if (interaction == batch_mode) selector = 16;
else selector = 17;
if (log_opened) selector = selector + 2;
}
/* *** some changes in following in 3.14159 *** */
/* if current extension is *not* empty, try to open using name as is */
/* string 335 is "" the empty string */
- if ((cur_ext != 335)&& a_open_in(read_file[n], TEXINPUTPATH))
+ if ((cur_ext != 335) && a_open_in(read_file[n], TEXINPUTPATH))
read_open[n]= 1;
/* we get here if extension is "", or file with extension failed to open */
/* if current extension is not `tex,' and `tex' is not irrelevant, try it */
s = make_string();
if (c == 0)
{
- if (term_offset +(str_start[s + 1]- str_start[s])> max_print_line -
- 2)
- print_ln();
- else if ((term_offset > 0)||(file_offset > 0))
- print_char(' ');
- slow_print(s);
+ if (term_offset + length(s) > max_print_line - 2)
+ print_ln();
+ else if ((term_offset > 0)||(file_offset > 0))
+ print_char(' ');
+ slow_print(s);
#ifndef f_WINDOWS
- fflush(stdout);
+ fflush(stdout);
#endif
- }
- else {
- print_err("");
- slow_print(s);
- if (eqtb[(hash_size + 1321)].hh.v.RH != 0)
- use_err_help = true;
+ } else {
+ print_err("");
+ slow_print(s);
+ if (err_help != 0)
+ use_err_help = true;
else if (long_help_seen)
- help1("(That was another \\errmessage.)");
+ help1("(That was another \\errmessage.)");
else {
-
if (interaction < 3)
- long_help_seen = true;
- help4("This error message was generated by an \\errmessage",
- "command, so I can't give any explicit help.",
- "Pretend that you're Hercule Poirot: Examine all clues,",
- "and deduce the truth by order and method.");
- }
+ long_help_seen = true;
+ help4("This error message was generated by an \\errmessage",
+ "command, so I can't give any explicit help.",
+ "Pretend that you're Hercule Poirot: Examine all clues,",
+ "and deduce the truth by order and method.");
+ }
error();
use_err_help = false;
- }
- {
- decr(str_ptr);
- pool_ptr = str_start[str_ptr];
- }
+ }
+ flush_string();
}
/* sec 1288 */
void shift_case (void)
case 0:
{
get_token();
- if (interaction == 3)
+ if (interaction == error_stop_mode)
;
print_nl("> ");
if (cur_cs != 0)
default:
{
p = the_toks();
- if (interaction == 3)
+ if (interaction == error_stop_mode)
;
print_nl(" > ");
token_show(temp_head);
integer t;
integer bSuppress; /* 199/Jan/5 */
- if (eqtb[(hash_size + 1319)].hh.v.RH != 0)/* everyjob */
- begin_token_list(eqtb[(hash_size + 1319)].hh.v.RH, 12);
+ if (every_job != 0)/* everyjob */
+ begin_token_list(every_job, 12);
lab60:
get_x_token(); /* big_switch */
push_nest();
mode = -1;
cur_list.aux_field.cint = ignore_depth;
- if (eqtb[(hash_size + 1318)].hh.v.RH != 0)/* everyvbox */
- begin_token_list(eqtb[(hash_size + 1318)].hh.v.RH, 11);
+ if (every_vbox != 0)/* everyvbox */
+ begin_token_list(every_vbox, 11);
}
break;
case 256 :
/* sec 1284 */
void give_err_help (void)
{
- token_show(eqtb[(hash_size + 1321)].hh.v.RH);
+ token_show(err_help);
}
/* sec 0524 */
bool open_fmt_file (void)
-{/* 40 10 */
- register bool Result;
- integer j;
- j = cur_input.loc_field;
+{
+ register bool Result;
+ integer j;
+ j = cur_input.loc_field;
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
/* For Windows NT, lets allow + instead of & for format specification */
/* if (buffer[cur_input.loc_field]== 38) */ /* 95/Jan/22 */
{
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
/* User specified a format name on the command line */
- incr(cur_input.loc_field);
- j = cur_input.loc_field;
- buffer[last]= 32;
- while (buffer[j]!= 32) incr(j);
+ incr(cur_input.loc_field);
+ j = cur_input.loc_field;
+ buffer[last]= 32;
+ while (buffer[j]!= 32) incr(j);
pack_buffered_name(0, cur_input.loc_field, j - 1);
- if (w_open_in(fmt_file))
+ if (w_open_in(fmt_file))
goto lab40; // format file opened OK
// format file open failed
if (knuth_flag) {
(void) sprintf(log_line, "%s;%s\n", "Sorry, I can't find that format", " will try the default.");
show_line(log_line, 1);
- }
- else {
- char *s=log_line;
-/* null_terminate (name_of_file + 1); */
- name_of_file[name_length + 1] = '\0'; /* null terminate */
+ } else {
+ char *s = log_line;
+ name_of_file[name_length + 1] = '\0';
(void) sprintf(s, "%s (%s);%s\n", "Sorry, I can't find that format", name_of_file+1, " will try the default.");
-/* space_terminate (name_of_file + 1); */
- name_of_file[name_length + 1] = ' '; /* space terminate */
+ name_of_file[name_length + 1] = ' ';
s += strlen(s);
(void) sprintf(s, "(Perhaps your %s environment variable is not set correctly)\n", "TEXFORMATS");
s += strlen(s);
}
/* Try the default format (either because no format specified or failed) */
pack_buffered_name(format_default_length - 4, 1, 0);
- if (! w_open_in(fmt_file))
- {
- ;
- if (knuth_flag) {
+ if (! w_open_in(fmt_file)) {
+ ;
+ if (knuth_flag) {
(void) sprintf(log_line, "%s!\n", "I can't find the default format file");
show_line(log_line, 1);
- } else {
- char *s=log_line;
-/* null_terminate (name_of_file + 1); */
- name_of_file[name_length + 1] = '\0'; /* null terminate */
- (void) sprintf(s, "%s (%s)!\n", "I can't find the default format file", name_of_file + 1);
-/* space_terminate (name_of_file + 1); */
- name_of_file[name_length + 1] = ' '; /* space terminate */
- s += strlen(s);
- (void) sprintf(s, "(Perhaps your %s environment variable is not set correctly)\n", "TEXFORMATS");
- s += strlen(s);
- {
- char *t; /* extra info 97/June/13 */
- if ((t = grabenv("TEXFORMATS")) != NULL) {
- sprintf(s, "(%s=%s)\n", "TEXFORMATS", t);
- } else {
- sprintf(s, "%s environment variable not set\n", "TEXFORMATS");
+ } else {
+ char *s = log_line;
+ name_of_file[name_length + 1] = '\0';
+ (void) sprintf(s, "%s (%s)!\n", "I can't find the default format file", name_of_file + 1);
+ name_of_file[name_length + 1] = ' ';
+ s += strlen(s);
+ (void) sprintf(s, "(Perhaps your %s environment variable is not set correctly)\n", "TEXFORMATS");
+ s += strlen(s);
+ {
+ char *t; /* extra info 97/June/13 */
+ if ((t = grabenv("TEXFORMATS")) != NULL) {
+ sprintf(s, "(%s=%s)\n", "TEXFORMATS", t);
+ } else {
+ sprintf(s, "%s environment variable not set\n", "TEXFORMATS");
+ }
}
+ show_line(log_line, 1); // show all three lines at once
}
- show_line(log_line, 1); // show all three lines at once
- }
- Result = false;
+ Result = false;
return(Result);
- }
- lab40: cur_input.loc_field = j;
- Result = true;
- return Result;
-}
+ }
+lab40:
+ cur_input.loc_field = j;
+ Result = true;
+ return Result;
+}
/**************************************************************************/
void print_char_string (unsigned char *s)
{
show_line("close_files_and_terminated already ", 0);
return; // sanity check
}
- if (trace_flag) show_line("\nclose_files_and_terminate ", 0);
+ if (trace_flag)
+ show_line("\nclose_files_and_terminate ", 0);
// close all open files
- {
- register integer for_end;
- k = 0;
- for_end = 15; /* CHECK LIMIT */
- if (k <= for_end) do
- if (write_open[k]){
- (void) a_close(write_file[k]);
- }
- while(k++ < for_end);
- }
-;
+ for (k = 0; k <= 15; k++)
+ if (write_open[k]) {
+ (void) a_close(write_file[k]);
+ }
#ifdef STAT
/* if tracing_stats>0 then @<Output statistics about this job@>; */
/************************************************************************/
} /* end of if (log_opened) */
#endif /* STAT */
- while(cur_s > -1){
- if (cur_s > 0){
- dvi_buf[dvi_ptr]= 142;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
+ while (cur_s > -1) {
+ if (cur_s > 0)
+ dvi_out(142);
else {
- {
- dvi_buf[dvi_ptr]= 140;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- incr(total_pages);
- }
- decr(cur_s);
- }
+ dvi_out(140);
+ incr(total_pages);
+ }
+ decr(cur_s);
+ }
- if (total_pages == 0) print_nl("No pages of output."); /* */
+ if (total_pages == 0)
+ print_nl("No pages of output.");
else {
- {
- dvi_buf[dvi_ptr]= 248; /* post - start of postamble */
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- dvi_four(last_bop);
- last_bop = dvi_offset + dvi_ptr - 5;
+ dvi_out(248); /* post - start of postamble */
+ dvi_four(last_bop);
+ last_bop = dvi_offset + dvi_ptr - 5;
dvi_four(25400000L); /* magic DVI scale factor */
dvi_four(473628672L); /* 7227 * 65536 */
prepare_mag(); /* in tex2.c */
dvi_four(mag); /* mag */
dvi_four(max_v); /* max height + depth */
dvi_four(max_h); /* max width */
- {
- dvi_buf[dvi_ptr]= max_push / 256;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= max_push % 256;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- if (total_pages >= 65536) { // 99/Oct/10 dvi_t 16 bit problem
- sprintf(
- log_line,
- "\nWARNING: page count (dvi_t) in DVI file will be %ld not %ld\n",
- (total_pages % 65536),
- total_pages);
- if (log_opened) fputs (log_line, log_file);
- show_line(log_line, 1);
- }
- {
- dvi_buf[dvi_ptr]=(total_pages / 256)% 256;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- {
- dvi_buf[dvi_ptr]= total_pages % 256;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit) dvi_swap();
- }
-
- if (show_fonts_used && log_opened) /* 97/Dec/24 */
- show_font_info(); // now in local.c
-
- while(font_ptr > 0){
- if (font_used[font_ptr])dvi_font_def(font_ptr);
- decr(font_ptr);
- }
- {
- dvi_buf[dvi_ptr]= 249; /* post_post end of postamble */
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- dvi_four(last_bop);
- {
- dvi_buf[dvi_ptr]= 2;
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- k = 4 +((dvi_buf_size - dvi_ptr)% 4);
- while(k > 0){
- {
- dvi_buf[dvi_ptr]= 223; /* four to seven bytes of 223 */
- incr(dvi_ptr);
- if (dvi_ptr == dvi_limit)dvi_swap();
- }
- decr(k);
- }
+ dvi_out(max_push / 256);
+ dvi_out(max_push % 256);
+ if (total_pages >= 65536) { // 99/Oct/10 dvi_t 16 bit problem
+ sprintf(log_line, "\nWARNING: page count (dvi_t) in DVI file will be %ld not %ld\n",
+ (total_pages % 65536), total_pages);
+ if (log_opened)
+ (void) fputs (log_line, log_file);
+ show_line(log_line, 1);
+ }
+ dvi_out((total_pages / 256) % 256);
+ dvi_out(total_pages % 256);
+ if (show_fonts_used && log_opened) /* 97/Dec/24 */
+ show_font_info(); // now in local.c
+ while (font_ptr > 0) {
+ if (font_used[font_ptr])
+ dvi_font_def(font_ptr);
+ decr(font_ptr);
+ }
+ dvi_out(249); /* post_post end of postamble */
+ dvi_four(last_bop);
+ dvi_out(2);
+ k = 4 + ((dvi_buf_size - dvi_ptr) % 4);
+ while (k > 0) {
+ dvi_out(223); /* four to seven bytes of 223 */
+ decr(k);
+ }
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
if (trace_flag) { /* 93/Dec/28 - bkph */
sprintf(log_line, "\ndviwrite %d", dvi_gone);
show_line(log_line, 0);
}
/* *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** */
- if (dvi_limit == half_buf)writedvi(half_buf, dvi_buf_size - 1);
- if (dvi_ptr > 0)writedvi(0, dvi_ptr - 1);
+ if (dvi_limit == half_buf)
+ writedvi(half_buf, dvi_buf_size - 1);
+ if (dvi_ptr > 0)
+ writedvi(0, dvi_ptr - 1);
print_nl("Output written on ");
- if (full_file_name_flag && dvi_file_name != NULL)
- print_char_string((unsigned char *) dvi_file_name);
- else
- slow_print(output_file_name);
+ if (full_file_name_flag && dvi_file_name != NULL)
+ print_char_string((unsigned char *) dvi_file_name);
+ else
+ slow_print(output_file_name);
print_string(" (");
- print_int(total_pages);
+ print_int(total_pages);
print_string(" page");
- if (total_pages != 1) print_char('s');
+ if (total_pages != 1)
+ print_char('s');
print_string(", ");
- print_int(dvi_offset + dvi_ptr);
+ print_int(dvi_offset + dvi_ptr);
print_string(" bytes).");
- b_close(dvi_file);
+ b_close(dvi_file);
}
if (log_opened) {
(void) putc ('\n', log_file);
(void) a_close(log_file);
selector = selector - 2;
if (selector == 17) {
- print_nl("Transcript written on ");
- if (full_file_name_flag && log_file_name != NULL)
- print_char_string((unsigned char *) log_file_name);
- else
- slow_print(texmf_log_name);
- print_char('.');
- }
- }
- print_ln();
+ print_nl("Transcript written on ");
+ if (full_file_name_flag && log_file_name != NULL)
+ print_char_string((unsigned char *) log_file_name);
+ else
+ slow_print(texmf_log_name);
+ print_char('.');
+ }
+ }
+ print_ln();
if ((edit_name_start != 0) && (interaction > 0)) {
call_edit(str_pool, edit_name_start, edit_name_length, edit_line);
}
void debug_help (void)
{/* 888 10 */
integer k, l, m, n;
- while(true){
+ while (true) {
;
- print_nl(" debug # (-1 to exit):"); /* */
+ print_nl(" debug # (-1 to exit):");
#ifndef _WINDOWS
fflush(stdout);
#endif
}
break;
case 16 :
- panicking = ! panicking;
+ panicking = !panicking;
break;
default:
print(63); /* ? */
extern void tex_help (unsigned int n, ...);
extern void append_char(ASCII_code c);
extern void succumb(void);
-extern void dvi_out_ (ASCII_code op);
+extern INLINE void dvi_out_ (ASCII_code op);
#define dvi_out(op) dvi_out_((ASCII_code) (op))
extern void flush_string (void);
#define help0() tex_help(0)
#include <setjmp.h>
-#define EXTERN /* Instantiate data in `texd.h' or `mfd.h' here ! */
+#define EXTERN /* Instantiate data in `texd.h' or `mfd.h' here ! */
#include "texd.h"
#include <time.h> // needed for time, struct tm etc.
-extern struct tm *localtime();
+extern struct tm * localtime();
/* Catch interrupts. */
#include <signal.h> // needed for signal, SIGINT, SIG_IGN, SIG_ERR etc.
/* following may be found in local.c --- used for key replacement */
-extern char *replacement[]; /* pointers to replacement strings */
+extern char * replacement[]; /* pointers to replacement strings */
/* extern char *buffercopy; */ /* pointer to allocated copy of buffer */
int init(int, char **); /* in local.c */
#endif /* INIVIR */
-char *set_program_name(char *comm)
+char * set_program_name(char *comm)
{ /* bkph */
char *s;
if ((s = strrchr (comm, '\\')) != NULL) s++;
program_name = set_program_name(av[0]); /* rewritten 1994/Mar/1 - bkph */
#else
program_name = strrchr (av[0], PATH_SEP);
- if (program_name == NULL) program_name = av[0];
- else program_name++;
+ if (program_name == NULL)
+ program_name = av[0];
+ else
+ program_name++;
#endif
#ifdef MSDOS
program_name = set_program_name(av[0]); /* rewritten 1994/Mar/1 - bkph */
#else
program_name = strrchr (av[0], PATH_SEP);
- if (program_name == NULL) program_name = av[0];
- else program_name++;
+ if (program_name == NULL)
+ program_name = av[0];
+ else
+ program_name++;
#endif
if (strcmp (program_name, virgin_program) != 0) {
-/* TeX or Metafont adds the space at the end of the name. */
- (void) sprintf (custom_default, dump_format, program_name);
+/* TeX or Metafont adds the space at the end of the name. */
+ (void) sprintf (custom_default, dump_format, program_name);
dump_default_var = custom_default;
dump_default_length = strlen (program_name) + dump_ext_length;
}
// ABORTCHECKZERO; // after storefmtfiles e.g.
- if (endit(flag) != 0) flag = 1; /* do final clean up in local.c */
+ if (endit(flag) != 0)
+ flag = 1; /* do final clean up in local.c */
if (flag == 0) return 0;
#ifdef _WINDOWS
return flag;
sprintf(log_line, "Cannot convert time (%0ld)!\n", clock);
show_line(log_line, 1);
*pyear=2038; *pmonth=1; *pday=18; *minutes=22 * 60 + 14;
- }
- else {
+ } else {
*minutes = tmptr->tm_hour * 60 + tmptr->tm_min;
*pday = tmptr->tm_mday;
*pmonth = tmptr->tm_mon + 1;
{
#ifdef MSDOS
if (!no_interrupts) {
- if (signal(SIGINT, catch_interrupt)== SIG_ERR) {
+ if (signal(SIGINT, catch_interrupt) == SIG_ERR) {
show_line(" CTRL-C handler not installed\n", 0);
#ifndef _WINDOWS
uexit(1); /* do we care when run as DLL ? */
if (log_opened) { /* 1994/Aug/10 */
lgstart = str_start[texmf_log_name];
- lglength = str_start[texmf_log_name + 1]- str_start[texmf_log_name];
+ lglength = length(texmf_log_name);
log_file_name = stringpool + lgstart;
- }
- else { /* 1994/Aug/10 */
+ } else { /* 1994/Aug/10 */
lglength = 0;
log_file_name = (unsigned char *) "";
}