diff options
author | Peter Breitenlohner <peb@mppmu.mpg.de> | 2014-01-09 12:56:28 +0000 |
---|---|---|
committer | Peter Breitenlohner <peb@mppmu.mpg.de> | 2014-01-09 12:56:28 +0000 |
commit | 04d22733fda61f856746b38a37add87bd19aa035 (patch) | |
tree | f0e3bccdacb29d2d1aa11636aa68eb8778d3a00c /Build/source/texk/web2c/omegaware/ovp2ovf.ch | |
parent | 05e38350226b5da4ed5ad2132525f9b31ac0bc50 (diff) |
web2c/omegaware: Version 1.13 of Omega font utilities OFM2OPL & Co
git-svn-id: svn://tug.org/texlive/trunk@32616 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/omegaware/ovp2ovf.ch')
-rw-r--r-- | Build/source/texk/web2c/omegaware/ovp2ovf.ch | 41 |
1 files changed, 20 insertions, 21 deletions
diff --git a/Build/source/texk/web2c/omegaware/ovp2ovf.ch b/Build/source/texk/web2c/omegaware/ovp2ovf.ch index 258bafb26d6..f003e8bf211 100644 --- a/Build/source/texk/web2c/omegaware/ovp2ovf.ch +++ b/Build/source/texk/web2c/omegaware/ovp2ovf.ch @@ -16,10 +16,10 @@ @z @x [1] Define my_name -@d banner=='This is OVP2OVF, Version 1.12' +@d banner=='This is OVP2OVF, Version 1.13' {printed when the program starts} @y @d my_name=='ovp2ovf' -@d banner=='This is OVP2OVF, Version 1.12' +@d banner=='This is OVP2OVF, Version 1.13' {printed when the program starts} @z @x [2] Print the banner later. @@ -30,15 +30,14 @@ procedure initialize; {this procedure gets things started properly} @<Define |parse_arguments|@> procedure initialize; {this procedure gets things started properly} var @<Local variables for initialization@>@/ - begin - kpse_set_program_name (argv[0], my_name); - parse_arguments; + begin kpse_set_program_name (argv[0], my_name); + parse_arguments; @z @x [3] Increase constants. @!buf_size=60; {length of lines displayed in error messages} @y -@!buf_size=3000; {max input line length, output error line length} +@!buf_size=3000; {length of lines displayed in error messages} @z @x [6] Open VPL file. @@ -86,13 +85,13 @@ correspond to one-character constants like \.{"A"} in \.{WEB} language. @z @x [34] (fill_buffer) end-of-line counts as a delimiter. Possibly a bug. - while (limit<buf_size-1)and(not eoln(vpl_file)) do begin - incr(limit); read(vpl_file,buffer[limit]); +else begin while (limit<buf_size-1)and(not eoln(vpl_file)) do + begin incr(limit); read(vpl_file,buffer[limit]); end; buffer[limit+1]:=' '; right_ln:=eoln(vpl_file); @y - while (limit<buf_size-1)and(not eoln(vpl_file)) do begin - incr(limit); read(vpl_file,buffer[limit]); +else begin while (limit<buf_size-1)and(not eoln(vpl_file)) do + begin incr(limit); read(vpl_file,buffer[limit]); end; buffer[limit+1]:=' '; right_ln:=eoln(vpl_file); if right_ln then begin incr(limit); buffer[limit+1]:=' '; @@ -102,10 +101,10 @@ correspond to one-character constants like \.{"A"} in \.{WEB} language. @x [37] (get_keyword_char) Unnecessary due to previous change. begin while (loc=limit)and(not right_ln) do fill_buffer; if loc=limit then cur_char:=" " {end-of-line counts as a delimiter} -else begin +else begin cur_char:=xord[buffer[loc+1]]; @y begin while loc=limit do fill_buffer; -begin + begin cur_char:=xord[buffer[loc+1]]; @z % [89] `index' is not a good choice for an identifier on Unix systems. @@ -163,12 +162,12 @@ HEX:=' 0123456789ABCDEF';@/ @z @x [152] Fix up the mutually recursive procedures a la pltotf. -@p function f(@!h,@!x,@!y:indx):indx; forward;@t\2@> +@p function f(@!h:integer64;@!x,@!y:indx):indx; forward;@t\2@> {compute $f$ for arguments known to be in |hash[h]|} @y @p ifdef('notdef') -function f(@!h,@!x,@!y:indx):indx; begin end;@t\2@> +function f(@!h:integer64;@!x,@!y:indx):indx; begin end;@t\2@> {compute $f$ for arguments known to be in |hash[h]|} endif('notdef') @z @@ -176,7 +175,7 @@ endif('notdef') @x [153] Finish fixing up f. @p function f; @y -@p function f(@!h,@!x,@!y:indx):indx; +@p function f(@!h:integer64;@!x,@!y:indx):indx; @z @x [156] Change TFM-byte output to fix ranges. @@ -189,8 +188,8 @@ endif('notdef') @p procedure out_scaled(x:fix_word); {outputs a scaled |fix_word|} var @!n:byte; {the first byte after the sign} @!m:0..65535; {the two least significant bytes} -begin if abs(x/design_units)>=16.0 then begin - print_ln('The relative dimension ',x/@'4000000:1:3, +begin if abs(x/design_units)>=16.0 then + begin print_ln('The relative dimension ',x/@'4000000:1:3, ' is too large.'); @.The relative dimension...@> print(' (Must be less than 16*designsize'); @@ -200,8 +199,8 @@ begin if abs(x/design_units)>=16.0 then begin @p procedure out_scaled(x:fix_word); {outputs a scaled |fix_word|} var @!n:byte; {the first byte after the sign} @!m:0..65535; {the two least significant bytes} -begin if fabs(x/design_units)>=16.0 then begin - print('The relative dimension '); +begin if fabs(x/design_units)>=16.0 then + begin print('The relative dimension '); print_real(x/@'4000000,1,3); print_ln(' is too large.'); @.The relative dimension...@> @@ -217,9 +216,9 @@ begin if fabs(x/design_units)>=16.0 then begin % than anything else. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @x - while label_table[sort_ptr].rr>char_remainder[c] do begin + while label_table[sort_ptr].rr>char_remainder[c] do @y - while label_table[sort_ptr].rr>intcast(char_remainder[c]) do begin + while label_table[sort_ptr].rr>intcast(char_remainder[c]) do @z @x [175] Change VF-byte output to fix ranges. |