cleaned up mp_edge_object field names
[mplib] / CHANGES
1
2 This file is public domain.
3
4 ----------------------------------------------------------------------
5 What is new in the beta release of MPlib 1.085:
6 ----------------------------------------------------------------------
7
8 * Determination of the mem name to use in non-ini mode is now much 
9   closer to the web2c approach. 
10
11 * There is now a magic word in the beginning of the mem file to make
12   sure it is written by the correct version of MPlib.
13
14 * Fixed the disappearing comment sign in the to-be-typeset document 
15   created by the mpx generation subsystem.
16
17 * Various identifiers have been renamed to avoid clashes (that prevented
18   the source from building correctly on many platforms)
19
20 * A great many small changes and fixes have been added after running 
21   splint on the generated C source.
22
23
24 ----------------------------------------------------------------------
25 What is new in the beta release of MPlib 1.080:
26 ----------------------------------------------------------------------
27
28 * The MPlib distribution is released under the GPL version 2 or, at 
29   your option, any later version. The copyright statements in the source
30   files have been updated to reflect this.
31
32 * The mpost program banner now contains the kpathsea version, and no 
33   longer mentions the fact that the source is now cweb at all.
34
35 * The mpost program once again supports 'E' error responses.
36
37 * There are some minor internal API changes, but there is still no 
38   documentation for the API, so that is not very interesting yet.
39
40
41 ----------------------------------------------------------------------
42 What is new in the beta release of MPlib 1.060:
43 ----------------------------------------------------------------------
44
45 * The MPlib distribution is released under the GPL version 2.
46
47 * This release is the first that replaces the old metapost distribution
48   completely. The executable is now named 'mpost' with engine name
49   'metapost'.
50
51 * The release now includes a cweb implementation of the makempx 
52   functionality that is linked into the mpost executable. 
53   This internal code will be used unless the MPXCOMMAND variable is set.
54   Because of this functionality, the mpware directory is no longer 
55   included and the standalone programs 'makempx', 'newer', 'mpto',
56   'dvitomp' and 'dmp'. are no longer maintained.
57
58 * This is the first development release of the new cycle, and contains 
59   all of the functionality of Metapost 1.005. The mpost version is now 
60   1.060, and the special version number for the cweb version has been 
61   removed from the banner.
62   
63 ----------------------------------------------------------------------
64 What is new in the alpha release of MPlib (0.20.0):
65 ----------------------------------------------------------------------
66
67 * Two bugs in MP 1.002 were fixed by Giuseppe Bilotta, both fixes
68   are about polygonals pens and will be included in the upcoming 
69   MP 1.003 release also.
70
71 * It is now possible to ask for the envelope of a path drawn as 
72   traced by a (non-elliptical) pen:
73
74     path p,q;
75     p = fullcircle scaled 30;
76     q = envelope pensquare of p;
77    
78 * There is a lua interface now, and it is already used by luatex. 
79
80   To play with this, currently the best solution is to fetch the 
81   0.25.0 beta of luatex: http://foundry.supelec.fr/projects/luatex
82   This embeds MPlib 0.25.0 as well as its documentation. 
83
84 * Many bugs were fixed.
85
86 ----------------------------------------------------------------------
87 What is new in the alpha release of MPlib (0.10.0):
88 ----------------------------------------------------------------------
89
90 * The source is converted to cweb, and split into a library part
91   (mpdir/lib/*.w) and a frontend executable (mpdir/mpost.w).
92
93 * The front end executable is named "newmpost", this takes
94   care of configuring the MPlib library via C code, and uses
95   kpathsea for file searching. There is no change file involved, 
96   and the web2c runtime library is not used.
97
98 * Some of the internal arrays now grow dynamically when needed:
99
100   * the input buffer
101   * the string pool and number of strings
102   * the font memory and number of fonts
103   * the number of "readfrom" and "write" files
104   * the path segment size
105   * the input nesting stack
106   * the number of new internals
107   * the TFM writing arrays (but these are limited by TFM format)
108
109   Still not doing that (so these can only be changed in --ini mode):
110
111   * the main memory
112   * the hash size
113   * the number of simultaneous macro parameters
114   * the level of "input" file nesting
115
116 * The following command-line options are ignored by the front-end
117   command (for now):
118
119   -[no-]file-line-error
120   -halt-on-error
121   -output-directory=
122   -[no-]parse-first-line
123   -recorder
124   -translate-file=
125   -8bit
126   -T
127   
128   The other web2c command-line options should work as normal.
129
130 * the mpware tools are not in this distribution, their functionality
131   will eventually be assimilated into the frontend application.
132
133 * the build process depends on a local "ctangle" command being in the 
134   path, for now. The confiration and building system is not yet complete.
135
136 * API documentation is still missing, but the MetaPost input language 
137   has not changed.
138
139 ----------------------------------------------------------------------
140 What is new in version 1.002:
141 ----------------------------------------------------------------------
142
143 * Version 1.001 introduced a memory allocation error in mpto that could
144   result in the program looping endlessly
145
146 ----------------------------------------------------------------------
147 What is new in version 1.001:
148 ----------------------------------------------------------------------
149
150 * The default cmyk 'black' color now uses only black, not all four
151   ink colors (after a discussion on the mailing list).
152
153 * Some issues were reported with the new turningnumber algorithm,
154   all known problems are now fixed.
155
156 * Gábor Braun discovered that mpost did not always download the font
157   encodings into all the created output files.
158
159 * Akira Kakuto and Hartmut Henkel found some small issues in mpto
160   regarding trailing and leading whitespace.
161
162 * A fix for the 'Helvetica' entries in trfonts.map was provided by
163   Werner Lemberg, and Michail Vidiassov supplied two extra font 
164   entries for troff.map (Symbol and ZapfDingbats). Karl Berry
165   provided the new file troff-updmap.map, to be used by the updmap 
166   tool in texlive.
167
168 * Mpost now supports web2c's --output-directory option.
169
170 * Any warnings about missing fonts and characters are now always 
171   written to the terminal as well as to the log.
172
173 * Now that makempx is a C program, it needed a different install line
174   in build.sh. Also, Olaf Mersmann contributed a patch to recognize
175   'gmake' in build.sh
176
177 * Luigi Scarso found some typing errors in the web source that prevented
178   clean weaving of the source.
179
180 * Stephan Hennig fixed a number of problems in the manual (mpman.tex)
181   and the introduction paper (mpintro.tex). He also wrote new sections on 
182   how to preview metapost graphics and on how to use metapost graphics 
183   inside  other documents. On top of that, the manual is now hypertext-aware, 
184   and fixes for a whole series of small problems have been applied.
185
186 ----------------------------------------------------------------------
187 What is new in version 1.000:
188 ----------------------------------------------------------------------
189
190 *  The use of DSC (document structuring) comments has been
191    been cleaned up, thanks to comments by Michail Vidiassov.
192  
193 *  By setting prologues to 2 or 3, you can ask MetaPost to 
194    reencode and include the used labels fonts in the output,
195    thus creating proper Encapsulated PostScript files even
196    if labels are present.
197
198 *  Support for greyscale and cmykcolor models is added.
199
200 *  The new drawing options "withprescript" and withpostscript"
201    allow the user to attach PostSCript special text to a specific
202    drawing object.
203
204 *  Setting the new internal "mpprocset" to 1 will make MetaPost
205    create a somewhat extended preamble that defines shortcuts
206    for the postscript commands (e..g "l" instead of "lineto").
207    For big images, this can help shrink the output a bit.
208
209 *  The pool file is now integrated in the executable, so there
210    is not separate 'mp.pool' anymore, except at build time.
211
212 *  Groff support is redone, and dmp now uses kpathsea searching.
213    Groff related changes are thanks to the efforts of Werner 
214    Lemberg and Michail Vidiassov 
215
216 *  makempx is now a compiled executable on all systems,
217    thank you Akira Kakuto
218
219 *  The error for 'special's longer then 255 characters
220    is removed, so specials can now be of any length.
221
222 *  There is new turningnumber implementation that attempts
223    to find the mathematically correct "turningnumber" of a 
224    path. The formulae are derived from a mailinglist discussion
225    between (especially) Dan Luecking and Giuseppe Bilotta.
226
227 *  The manual is updated and modernized. It is currently 
228    maintained by Stephan Hennig and Troy Henderson.
229
230 ------------------------------------------------------------------
231 Changes in version 0.920:
232 ----------------------------------------------------------------------
233
234 *  Fixed a long-standing bug in web2c where changing values of the
235    memory_size setting in web2c could cause crashes and other random
236    problems. The memory array size is now written to the dump file
237    and loading is aborted if the values do not match.
238 *  Implement configurable figure output filename templates.
239 *  Implement cmyk, greyscale, and marking only color models.
240 *  The mpost executable is now version 0.920
241   
242 ----------------------------------------------------------------------
243 Changes in version 0.902:
244 ----------------------------------------------------------------------
245 *  Fix a bug in mpto resulting in correctly placed labels (with
246    thanks to Dan Luecking)
247 *  Fix a bug blocking compilation of dmp on MacOSX
248 *  The mpost,dmp,mpto executables are now version 0.902
249
250
251 ----------------------------------------------------------------------
252 Changes in version 0.901:
253 ----------------------------------------------------------------------
254 *  A corrected bugfix for bug item 3 from version 0.9 (the old fix
255    made metapost fail the trap test)
256 *  Included mpost.mp for mem generation
257 *  Updated the trap test output.
258 *  The mpost executable is now version 0.901
259
260 ----------------------------------------------------------------------
261 What is new in version 0.9:
262 ----------------------------------------------------------------------
263 1. There is a new internal quantity called mpversion that reports the 
264    current metapost version, and the version information is also written 
265    to the PostScript file.   
266 2. The LaTeX sources of the mpman, mpintro, and mpgraph manuals have
267    become part of the distribution package.
268 3. TEX.mp now has TeX format support through a pair of macros called 
269    TEXPRE() and TEXPOST(). This llows you to process the contents of 
270    the TEX() macro with, for example, LaTeX (instead of plain TeX).
271    An example is given in the manual.
272 4. metapost now writes a %%HiReSBoundingBox comment
273 5. The EPS output no longer contains actual spaces within PostScript 
274    strings as for example output by label("a space"), but their
275    octal escape (\040) instead.
276 6. The EPS output now also has a %%BeginProlog DSC comment
277    as well as %%EndProlog
278 7. The comments in the Web source have been changed to point out
279    that on modern machines, acquiring the random seed has actually
280    become a system-dependant operation (a granularity of whole seconds 
281    is not small enough on new machines).
282 8. The 'newer' command now accepts more than 2 arguments, testing
283    each of the files in turn.
284
285 ----------------------------------------------------------------------
286 Bugfixes in version 0.9:
287 ----------------------------------------------------------------------
288 1. Documentation improvements: all known errata and typos have been 
289    removed, better explanations of e.g. dash patterns and dotlabel have
290    been provided, and a number of omissions has been rectified.
291 2. The BoundingBox was not computed correctly when a filldraw command
292    with a noticeable pen size was used at the edge of the picture.
293 3. Paths starting with degenerate constructions like (0,0)--(0,0)--(0,0) 
294    could overflow memory.
295 4. The PostScript output could accidentally contain 8-bit characters 
296    within PostScript strings in previous versions because a test was
297    shared between terminal printing and PostScript printing.
298 5. A bug has been found in the assignment of serial numbers to independant
299    variables in metafont 2.71828. This bug affected MP as well, and the
300    same patch has been applied.
301 6. The turningnumber was sometimes wrong in unexpected ways. The new
302    implementation is still sometimes wrong (when there are strange path
303    segments involved), but in a much more predictable way: the new code
304    always draws straight lines between the actual points, and calculates 
305    the turningnumber based on that path instead of the actual path. The
306    effect is that cusps and loops within segments are now completely 
307    ignored. A more thorough fix of turningnumber is planned for the 
308    next release.
309 7. There was an 'off by one' error in dvitomp wrt. the interpretation
310    of virtual fonts.
311 8. mpto uses a new TeX macro for the generation of labels, making it
312    more robust wrt. strange user code within the actual label text.
313 9. A missing colon in boxes.mp has been added
314 10. A missing save in mfplain.mp has been added
315 11. The generisize in boxes.mp has been fixed so that it now accepts [[ as 
316     a valid variable name
317
318 ----------------------------------------------------------------------
319 Version 0.641:
320 ----------------------------------------------------------------------
321 The only change was to fix the code for transforming a picture that
322 contains a filldraw.  Version 0.64 introduced a bug that caused an
323 inappropriate memory reference in that case.
324
325 ----------------------------------------------------------------------
326 What is new in Version 0.64:
327 ----------------------------------------------------------------------
328 1. A new primitive command  closefrom filename  closes a readfrom file
329    so that subsequent calls to readfrom with that file name will go back
330    to the beginning of the file.
331 2. The ^^ notation for unprintable characters is now used only when printing
332    on the terminal or the log file.  Internal computations and the write
333    command are all 8-bit clean.  (This is partly due to material in mp.ch
334    that changes the initialization of the xchr array.  Without these
335    system-dependent changes, the write command would map all non-ascii
336    characters to spaces.)
337 3. Arithmetic overflow during a comparison such as  20000>-20000 is now
338    ignored.  This avoids extraneous error message when using the graph.mp
339    macro package.
340 4. Transformations with negative determinants now work properly on pictures
341    drawn with polygonal pens.
342 5. When the readfrom operator is applied to a file that does not exist,
343    an attempt to close a non-open file could cause problems in some
344    implementations.  This has now been fixed.
345 6. Using  draw picture_expression withpen  where the picture_expression
346    was a scaled picture containing dashed lines, the dash lengths would
347    change.  This bug has been fixed.
348 7. The dashpart operator could return an invalid picture or a picture that
349    is not properly scaled.  This has also been fixed.
350 8. The |char_base| variable could become negative when using fonts that
351    do not start at character 0.  There was also bad Pascal code in function
352    b_open_in.  This has all been fixed.
353 9. Dvitomp has been fixed to avoid a font data structure problem that
354    could cause some characters to come out in the wrong font when you
355    mix virtual and non-virtual fonts.
356 10. Dvitomp now correctly prints font names when there is a checksum
357    mismatch, and it aborts instead of just printing an error if a tfm
358    or vf file is bad.
359 11. In plain.mp, the drawdblarrow macro now uses filldraw so that it works
360    better with large pen sizes.
361
362 ----------------------------------------------------------------------
363 Version 0.632:
364 ----------------------------------------------------------------------
365 When prologues is negative, the output files use full precision for
366 coordinates in "%%BoundingBox" comments.  In btex..etex blocks,
367 "number too large" and "invalid character" errors are suppressed.
368 The result of btex..etex is now guaranteed to be in a setbounds path
369 so that a for...within iteration will always treat it as a unit.
370
371 There are also some obscure bug fixes involving string compaction when
372 scanning a file name or when mp is compiled in debug mode.  Some possible
373 identifier name conflicts and range check errors have also been fixed.
374
375
376 ----------------------------------------------------------------------
377 Version 0.631:
378 ----------------------------------------------------------------------
379 This version fixes an obscure bug that could cause certain perfectly valid
380 strings to be printed as "???" or " NONEXISTENT".  It also includes a minor
381 fix to the PATHEXPAND code that prevents running out of file descriptors.
382
383
384 ----------------------------------------------------------------------
385 What is new in Version 0.63:
386 ----------------------------------------------------------------------
387 1. Backslashes in the PostScript output are rendered correctly.  They used
388    to come out as (\) instead of (\\).
389 2. Recycling an independent variable should no longer cause spurious overflows.
390    (This bug was recently found in mf.web.)
391 3. Pythagorean addition should now be faster in certain trivial cases.
392 4. Rotating text by arbitrary angles should no longer cause bad PostScript
393    output.  The problem was that arguments to "fshow" could be inaccurate.
394 5. Obscure bugs inherited from mf.web are now fixed.  These involve
395    balancing parentheses showing on the terminal, reporting the correct
396    line number in case of buffer overflow, and removing spurious reference
397    counts that could effect end-of-job statistics.
398 6. Fonts with ec=255 should no longer cause mp's PostScript output routines
399    to go into a loop.
400 7. When mp's string mechanism was heavily used, file names could occaisonally
401    be printed on the terminal and log file as "(?)".  This has been fixed.
402 8. Setting PATHEXPAND in site.h causes mp, dvitomp and dmp to understand "//"
403    in path variables as "search multiple levels of subdirectories".  This is
404    for compatibility with recent versions of the Web2c TeX distribution.
405 9. A typo in mpware/makempx and mpware/troffmpx has been fixed.  Previous
406    versions of these scripts would not run on some systems.
407 10. Data files *.d have been added to the doc directory.  These are used by
408    doc/mpgraph.mp which generates figures for "Drawing Graphs with MetaPost".
409 11. Typos in mpintro.tex and mp.web's TeX material have been fixed.
410 12. Files examples.mp, mpintro.tex and mpintro.bib have moved from mplib to
411     the doc directory.
412 13. The author's email address now appears in the README file.
413
414
415 ----------------------------------------------------------------------
416 Macros added to the mplib directory between Versions 0.50 and 0.62:
417 ----------------------------------------------------------------------
418 rboxes.mp is a slightly more general version of boxes.mp
419 TEX.mp provides a way of running tex dynamically instead of as a pre-processor
420 graph.mp, format.mp, and sarith.mp are documented in doc/mpgraph.ps
421 (This is the same as ftp://netlib.att.com/netlib/att/cs/cstr/164.ps.Z)
422 marith.mp, string.mp, texnum.mp, and troffnum.mp are low-level packages
423 used by graph.mp, format.mp, and sarith.mp.
424
425
426 ----------------------------------------------------------------------
427 Other minor bug fixes subsequent to Version 0.60
428 ----------------------------------------------------------------------
429 1. plain.mp has been fixed so that the x**y works properly when x<0 and y is
430    a negative integer.
431 2. Programs mptotex.c and mptotr.c which extract btex..etex material have been
432    fixed so they work properly with input files that do not end with a newline
433    character.
434 3. Program dmp.c which handles troff output from btex..etex blocks has been
435    modified to avoid outputting any non-ASCII characters that the C function
436    isprint() accepts.
437 4. Program dmp.c no longer gets troff graphics specials confused with text.
438    This seldom matters because btex..etex blocks are unlikely to contain
439    troff graphics.
440 5. Pictures containing clipped subpictures could come out with some colors
441    in the subpicture wrong.
442 6. Colors in PostSript output were not being restricted to the standard 0..1
443    range.
444 7. Transforming a path or a pen should no longer generate extraneous overflow
445    errors in certain unusual situations.
446 8. Drawing with a degenerate 2-vertex polygonal pen such as penrazor should
447    no longer cause an infinite loop in certain unusual situations.
448 9. There were some bugs in the mfplain macros.  (These macros are designed
449    to similate plain METAFONT.)  The drawing and filling macros now apply
450    currenttransform to the path but not the pen rather than vice versa.
451    The predefined modes now set o_correction to 1.0.
452 10. For security reasons, mp can no longer read or write files whose names
453    begin with '.'
454
455
456 ----------------------------------------------------------------------
457 Changes to the MetaPost language between Version 0.50 and Version 0.60
458 ----------------------------------------------------------------------
459 1. New operator `readfrom <filename>' and new command
460    `write <string expression> to <filename>' do file I/O.  Plain defines
461    a special string EOF that readfrom returns to indicate end-of-file
462    and write..to understands as well.
463 2. New iteration type `for p within <picture expression>: <loop text> endfor'
464    iterates through the interior components of the picture.  An `interior
465    component' is a single pen stroke, filled outline, or piece of typeset
466    text.  A part of the picture enclosed in a clipping or setbounds path
467    also counts as an interior component.  If the whole picture is enclosed
468    in such a path, the for..within iteration looks inside.  Note that a
469    picture generated by btex..etex is enclosed in a setbounds path.
470 3. The length operator now applies to pictures.  It returns the number of
471    interior components.
472 4. New boolean operators stroked, filled, textual, clipped, bounded test
473    the first component of a picture.  A picture enclosed in a clipping or
474    setbounds path counts as a single component.
475 5. Part extraction operators now work for pictures.  Standard operators
476    redpart, greenpart, bluepart apply to the color of the first component
477    and xpart, ypart, xxpart, xypart, yxpart, yypart extract parts of the
478    tranformation that has been applied to a text component.  If `textual p'
479    is false, the transform components are all zero; if `clipped p' or
480    `bounded p' is true, the color parts are all zero.  Additional operators
481    fontpart, textpart, pathpart, penpart, dashpart extract other information
482    from the first component of a picture.  They all return null values when
483    the first component has the wrong type:  fontpart and textpart return
484    null strings; pathpart returns the path (0,0); penpart returns nullpen;
485    and dashpart returns nullpicture.
486 6. The construction `dashed nullpicture' is now a no-op.  It used to be
487    an error.
488 7. The clip and setbounds statements used to ignore operations on empty
489    pictures.  Now they do not.
490 8. Structuring comments in the PostScript output are now based on EPSF-3.0
491    as described in the 2nd Edition of the PostScript Reference Manual.
492    When prologues is 0, some structuring comments are included but the
493    output is not flagged a `conforming document'.  Previous versions of
494    MetaPost behaved similarly but used slightly different structuring
495    comments.
496 9. When warningcheck is 0, numeric tokens and results from the hex and
497    oct operators can be as large as 32767.99998.  The old limit of about
498    4096 applies only when warningcheck is positive.
499 10. Various optimizations should make the output a little more compact.
500 11. For PostScript engines that obey the scan-conversion rules documented
501    in the 2nd edition PostScript Language Reference Manual, hrules and
502    vrules in btex..etex blocks should now come out to exactly the right
503    number of pixels.  The change affects all pen strokes drawn in MetaPost
504    It is implemented via PostScripts dtransform and idtransform operators.
505 12. A bug involving setbounds and MetaPost's corner operators has been fixed.
506 13. Degenerate elliptical pens no longer cause PostScript to divide by zero.
507 14. Fixed a very obscure bug involving readstring and end-of-file.
508 15. String compaction statistics are now printed correctly when the job
509    terminates with tracingstats positive.
510
511
512
513 ----------------------------------------------------------------------
514 Changes to the source files between Version 0.50 and Version 0.60
515 ----------------------------------------------------------------------
516
517 CHANGES to ./README.MP
518 The installation instructions should now be clearer.  They also explain
519 how to cope with verious versions of WEB2C.
520
521 CHANGES to ./site.h
522 I removed unused entries and clarified instructions in commentary material.
523 Confusing comments about possibly merging it with the WEB2C version of site.h
524 were removed--I think such merging is a bad idea.
525
526 CHANGES TO ./Makefile, mp/Makefile, mpware/Makefile:
527 Improved default settings, simplified the `install' recipe,
528 fixed a few missing depencies, portability problems, etc.
529
530 RENAMED FILES
531    mp/mp.defines, mpware/mpware.defines, mpware/dvitompext.c
532 TO mp/mp.def,     mpware/mpware.def,     mpware/dvimpext.c
533 (The names also changed in the Makefiles and convert scripts)
534
535 CHANGES TO mp/mp.web, mp/mp.ch, mp/mp.def, mp/mpext.c:
536 Lots of new features were added as noted above.  The only new system-
537 dependencies are for `readfrom' and `write...to'.
538 The change file now increases max_read_files; it doesn't bother with
539 max_write_files, but perhaps it should.  There is a new change entitled
540 "Path selector for..readfrom file".  From the web2C sources I borrowed
541 a change "`logname' is declared in <unistd.h> in some systems".  I also
542 added a PASCAL-like eof() routine to mpext, removed a change entitled
543 "avoid using eof() in read_psname_table" and added a new change
544 "[48.1199] `eof'...[in read_mem_file]".
545
546 Reorganization of math routines in the mp directory:
547 I moved the floating-point math routines from mpext.c to mpath.c.  A
548 C-language version of the standard math routines was moved from mpmath.c
549 to a new file pmath.c for use in mathtest only.  This required chages to
550 mathtest.c and time.c (also used only for mathtest).  The point of all
551 this is that there is now just one copy of the floating-point math routines
552 and it is used for mathtest and (optionally) for mp itself.
553
554 Routines in doc and mp/trapdir:
555 The output was updated to Version 0.60.  Another test file mptrap.mp
556 tests new features.  There have also been minor updates to the manual,
557 although the new features for Version 0.60 are not included yet.
558
559 CHANGES to macros in mplib:
560 A minor change to boxes.mp should make it more robust.  Changed default
561 setting of tracinglostchars in mfplain.mp and plain.mp.  Added a string
562 constant EOF to plain.mp for use with readfrom and write..to.
563 Changed mproof.tex to make it more portable as suggested by Knuth.
564
565 CHANGES to mpware/dvitomp.web, mpware/dvitomp.ch:
566 The web file was changed to output rules as horizontal or vertical
567 penstrokes with butt endcaps.  This also affected dvitomp.ch.  Also in
568 dvitomp.ch, put terminal output on stdout instead of stderr and require
569 the output file to be given on the command line.
570
571 CHANGES to mpware/makempx, mpware/troffmpx:
572 Added comments explaining what path names need fixing.  Portability improvements
573 and dvitomp's output change affect makempx only.
574
575 CHANGES to mpware/mptotex.c mpware/mptotr.c mpware/testex.err mpware/testex.mp:
576 Ignore an initial newline in the TeX (or troff) material to avoid generating
577 a blank line in the output file.  The test file now covers this case.
578
579 CHANGE to mpware/newer.c
580 Minor changes to make it compile in strict ANSI/POSIX environments.