summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/eptexdir/etex.ch0
blob: 4b5b8365104918dd0716b3688a09ebfc70b91901 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
% eptexdir/etex.ch0: changefile used to build e-pTeX, see eptexdir/eptex-base.ch for details.
% Public domain. Originally written by Peter Breitenlohner <tex-live@tug.org>.

@x [17.236] l.4960 - first web2c, then e-TeX additional integer parameters
@d int_pars=web2c_int_pars {total number of integer parameters}
@#
@d etex_int_base=tex_int_pars {base for \eTeX's integer parameters}
@y
@d int_pars=web2c_int_pars {total number of integer parameters}
@d count_base=int_base+int_pars {256 user \.{\\count} registers}
@z

@x [26.420]
if q=null then cur_val:=0 @+else cur_val:=mem[q+m].sc;
@y
if box(cur_val)=null then cur_val:=0 @+else cur_val:=mem[box(cur_val)+m].sc;
@z

@x [26.424]
        else cur_val:=unset_node+2;
    end; {there are no other cases}
@y
        else cur_val:=unset_node+2;
    end {there are no other cases}
@z

@x [27.468]
@d etex_convert_base=5 {base for \eTeX's command codes}
@d eTeX_revision_code=etex_convert_base {command code for \.{\\eTeXrevision}}
@d etex_convert_codes=etex_convert_base+1 {end of \eTeX's command codes}
@d job_name_code=etex_convert_codes {command code for \.{\\jobname}}
@y
@d job_name_code=5 {command code for \.{\\jobname}}
@z

@x [30.581]
var old_setting: integer; {saved value of |tracing_online|}
@y
@z

@x [32.619]
save_loc:=dvi_offset+dvi_ptr; base_line:=cur_v;
prev_p:=this_box+list_offset;
@<Initialize |hlist_out| for mixed direction typesetting@>;
left_edge:=cur_h;
@y
save_loc:=dvi_offset+dvi_ptr; base_line:=cur_v; left_edge:=cur_h;
@z

@x [32.620]
  prev_p:=link(prev_p); {N.B.: not |prev_p:=p|, |p| might be |lig_trick|}
@y
@z

@x [32.624] l.13005 - pTeX: output a box(and dir_node) with disp
  cur_h:=edge; cur_v:=base_line;
@y
  cur_h:=edge+width(p); cur_v:=base_line;
@z

@x [33.649]
exit: if TeXXeT_en then @<Check for LR anomalies at the end of |hpack|@>;
hpack:=r;
@y
exit: hpack:=r;
@z

@x [44.977]
q:=prune_page_top(q,saving_vdiscards>0);
p:=list_ptr(v); free_node(v,box_node_size);
if q<>null then q:=vpack(q,natural);
change_box(q); {the |eq_level| of the box stays the same}
@y
q:=prune_page_top(q); p:=list_ptr(v); free_node(v,box_node_size);
if q=null then box(n):=null {the |eq_level| of the box stays the same}
else box(n):=vpack(q,natural);
@z

@x [47.1080]
    begin if (type(tail)=math_node)and(subtype(tail)=end_M_code) then
      remove_end_M;
@y
@z
@x [47.1080]
    if LR_temp<>null then insert_end_M;
    end;
@y
@z

@x [47.1096]
  else line_break(false);
@y
  else line_break(widow_penalty);
@z

@x [47.1105]
else  begin if not is_char_node(tail) then
  begin if (type(tail)=math_node)and(subtype(tail)=end_M_code) then
    remove_end_M;
  if type(tail)=cur_chr then
@y
else  begin if not is_char_node(tail) then if type(tail)=cur_chr then
@z
@x [47.1105]
  if LR_temp<>null then insert_end_M;
  end;
@y
@z

@x [47.1110]
else  begin link(tail):=list_ptr(p); change_box(null);
@y
else  begin link(tail):=list_ptr(p); box(cur_val):=null;
@z

@x [48.1145]
else  begin line_break(true);@/
@y
else  begin line_break(display_widow_penalty);@/
@z

@x [49.1247]
if b<>null then mem[b+c].sc:=cur_val;
@y
if box(b)<>null then mem[box(b)+c].sc:=cur_val;
@z