xref: /plan9-contrib/sys/src/cmd/gs/doc/History1.htm (revision 593dc095aefb2a85c828727bbfa9da139a49bdf4)
13ff48bf5SDavid du Colombier<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
27dd7cddfSDavid du Colombier<html>
37dd7cddfSDavid du Colombier<head>
47dd7cddfSDavid du Colombier<title>History of Ghostscript versions 1.n</title>
5*593dc095SDavid du Colombier<!-- $Id: History1.htm,v 1.39 2005/10/20 19:46:23 ray Exp $ -->
67dd7cddfSDavid du Colombier<!-- Originally: history1.txt -->
77dd7cddfSDavid du Colombier<!--
87dd7cddfSDavid du Colombier	WARNING: do not use Pete Kaiser's emacs function "gs-toc" alone to
97dd7cddfSDavid du Colombier	re-create the table of contents here, because it will replace the
107dd7cddfSDavid du Colombier	hand-edited TOC subheads with a separate subhead for each H2 in
117dd7cddfSDavid du Colombier	the body of the file.  Or if you do, first look at the original
127dd7cddfSDavid du Colombier	TOC to see how to edit it for visual conciseness.
137dd7cddfSDavid du Colombier-->
143ff48bf5SDavid du Colombier<link rel="stylesheet" type="text/css" href="gs.css" title="Ghostscript Style">
157dd7cddfSDavid du Colombier</head>
167dd7cddfSDavid du Colombier
177dd7cddfSDavid du Colombier<body>
187dd7cddfSDavid du Colombier<!-- [1.0 begin visible header] ============================================ -->
197dd7cddfSDavid du Colombier
207dd7cddfSDavid du Colombier<!-- [1.1 begin headline] ================================================== -->
217dd7cddfSDavid du Colombier
223ff48bf5SDavid du Colombier<h1>History of Ghostscript versions 1.n</h1>
237dd7cddfSDavid du Colombier
247dd7cddfSDavid du Colombier<!-- [1.1 end headline] ==================================================== -->
257dd7cddfSDavid du Colombier
267dd7cddfSDavid du Colombier<!-- [1.2 begin table of contents] ========================================= -->
277dd7cddfSDavid du Colombier
287dd7cddfSDavid du Colombier<h2>Table of contents</h2>
297dd7cddfSDavid du Colombier
307dd7cddfSDavid du Colombier<blockquote><ul>
317dd7cddfSDavid du Colombier<li><a href="#Version1.3">Version 1.3 (6/20/89)</a>
327dd7cddfSDavid du Colombier<ul>
337dd7cddfSDavid du Colombier<li><a href="#V1.3_Interpreter">Interpreter</a>,
347dd7cddfSDavid du Colombier    <a href="#V1.3_Fonts">Fonts</a>,
357dd7cddfSDavid du Colombier    <a href="#V1.3_Library">Library</a>,
367dd7cddfSDavid du Colombier    <a href="#V1.3_Usage_procedures">Usage procedures</a>
377dd7cddfSDavid du Colombier</ul>
387dd7cddfSDavid du Colombier<li><a href="#Version1.2">Version 1.2 (2/22/89)</a>
397dd7cddfSDavid du Colombier<ul>
407dd7cddfSDavid du Colombier<li><a href="#V1.2_Interpreter">Interpreter</a>,
417dd7cddfSDavid du Colombier    <a href="#V1.2_Library">Library</a>,
427dd7cddfSDavid du Colombier    <a href="#V1.2_Usage_procedures">Usage procedures</a>
437dd7cddfSDavid du Colombier</ul>
447dd7cddfSDavid du Colombier<li><a href="#Version1.1">Version 1.1 (2/12/89)</a>
457dd7cddfSDavid du Colombier<ul>
467dd7cddfSDavid du Colombier<li><a href="#V1.1_Interpreter">Interpreter</a>,
477dd7cddfSDavid du Colombier    <a href="#V1.1_Initialization">Initialization (ghost.ps, gfonts.ps)</a>,
487dd7cddfSDavid du Colombier    <a href="#V1.1_Library">Library</a>,
497dd7cddfSDavid du Colombier    <a href="#V1.1_Usage_procedures">Usage procedures</a>
507dd7cddfSDavid du Colombier</ul>
517dd7cddfSDavid du Colombier<li><a href="#Version1.0">Version 1.0 (8/11/88)</a>
527dd7cddfSDavid du Colombier</ul></blockquote>
537dd7cddfSDavid du Colombier
547dd7cddfSDavid du Colombier<!-- [1.2 end table of contents] =========================================== -->
557dd7cddfSDavid du Colombier
567dd7cddfSDavid du Colombier<!-- [1.3 begin hint] ====================================================== -->
577dd7cddfSDavid du Colombier
587dd7cddfSDavid du Colombier<p>
597dd7cddfSDavid du ColombierThis document is a history of Ghostscript releases numbered 1.n.  For more
607dd7cddfSDavid du Colombierrecent changes, see the the other history documents and, for the latest
617dd7cddfSDavid du Colombierversions, the news:
627dd7cddfSDavid du Colombier
637dd7cddfSDavid du Colombier<blockquote>
647dd7cddfSDavid du Colombier<a href="News.htm">News</a><br>
657dd7cddfSDavid du Colombier<a href="History4.htm">History of Ghostscript versions 4.n</a><br>
667dd7cddfSDavid du Colombier<a href="History3.htm">History of Ghostscript versions 3.n</a><br>
677dd7cddfSDavid du Colombier<a href="History2.htm">History of Ghostscript versions 2.n</a><br>
687dd7cddfSDavid du ColombierHistory of Ghostscript versions 1.n (this document)<br>
697dd7cddfSDavid du Colombier</blockquote>
707dd7cddfSDavid du Colombier
717dd7cddfSDavid du Colombier<p>For other information, see the <a href="Readme.htm">Ghostscript
727dd7cddfSDavid du Colombieroverview</a>.
737dd7cddfSDavid du Colombier
747dd7cddfSDavid du Colombier<!-- [1.3 end hint] ======================================================== -->
757dd7cddfSDavid du Colombier
767dd7cddfSDavid du Colombier<hr>
777dd7cddfSDavid du Colombier
787dd7cddfSDavid du Colombier<!-- [1.0 end visible header] ============================================== -->
797dd7cddfSDavid du Colombier
803ff48bf5SDavid du Colombier
813ff48bf5SDavid du Colombier<h2><a name="Version1.3"></a>Version 1.3 (6/20/89)</h2>
827dd7cddfSDavid du Colombier<pre>
837dd7cddfSDavid du ColombierThis release should have had a lot more things in it, but time pressure
847dd7cddfSDavid du Colombierand the already long delay in getting it out made it necessary to push it
857dd7cddfSDavid du Colombierout the door in an incomplete state (e.g., no testing on X systems
867dd7cddfSDavid du Colombierwhatsoever).
877dd7cddfSDavid du Colombier
883ff48bf5SDavid du Colombier</pre>
893ff48bf5SDavid du Colombier<h3><a name="V1.3_Interpreter"></a>Interpreter</h3>
907dd7cddfSDavid du Colombier
913ff48bf5SDavid du Colombier<pre>
927dd7cddfSDavid du ColombierMakes -d and -D equivalent on the command line.  Adds a new switch -s / -S
937dd7cddfSDavid du Colombierthat defines a name as a string rather than a token.
947dd7cddfSDavid du Colombier
957dd7cddfSDavid du ColombierArranges things so that if -sLIB=_a_prefix_ is defined on the command
967dd7cddfSDavid du Colombierline, (filename) run will look for _a_prefix_filename before giving up if
977dd7cddfSDavid du Colombierfilename isn't the name of an accessible file.
987dd7cddfSDavid du Colombier
997dd7cddfSDavid du ColombierChanges showpage from an operator to a procedure.  The definition of
1007dd7cddfSDavid du Colombiershowpage in ghost.ps does a copypage, beeps the console, waits for the
1017dd7cddfSDavid du Colombieruser to type a character (normally a &lt;return&gt;, since line buffering is
1027dd7cddfSDavid du Colombieralways enabled), and then does an erasepage and an initgraphics.
1037dd7cddfSDavid du Colombier
1047dd7cddfSDavid du ColombierAdds a new initialization file, gdevs.ps, containing device-dependent
1057dd7cddfSDavid du Colombierparameters.  The default window size for X Windows is properly set to 612
1067dd7cddfSDavid du Colombierx 792, i.e., 8.5" x 11".
1077dd7cddfSDavid du Colombier
1087dd7cddfSDavid du ColombierAdds a new optional initialization file, statusd.ps, that provides dummy
1097dd7cddfSDavid du Colombierdefinitions for the names found in statusdict on LaserWriters.
1107dd7cddfSDavid du Colombier
1117dd7cddfSDavid du ColombierAdds a new operator, getenv, to get information from the shell
1127dd7cddfSDavid du Colombierenvironment.
1137dd7cddfSDavid du Colombier
1147dd7cddfSDavid du ColombierAdds a new predefined operator, defaultdevicename, that returns either (X)
1157dd7cddfSDavid du Colombieror (EGA) according to how the interpreter was built.
1167dd7cddfSDavid du Colombier
1177dd7cddfSDavid du ColombierAdds a new type, devicetype, and new operators deviceparams, getscanlines,
1187dd7cddfSDavid du Colombiermakedevice, makeimagedevice, and setdevice.  Changes currentdevice to
1197dd7cddfSDavid du Colombierreturn a device object rather than a set of parameters.
1207dd7cddfSDavid du Colombier
1217dd7cddfSDavid du ColombierMakes the scanner recognize reals with 'e' exponent notation, and handle
1227dd7cddfSDavid du Colombierreals with more than 9 digits.
1237dd7cddfSDavid du Colombier
1247dd7cddfSDavid du ColombierFixes a bug that made names starting with digits read incorrectly.
1257dd7cddfSDavid du Colombier
1267dd7cddfSDavid du ColombierFixes a bug in the exp operator that made it not pop its first argument
1277dd7cddfSDavid du Colombierfrom the stack.
1287dd7cddfSDavid du Colombier
1297dd7cddfSDavid du ColombierFixes a bug in the rand operator that made it return negative values about
1307dd7cddfSDavid du Colombierhalf the time.
1317dd7cddfSDavid du Colombier
1327dd7cddfSDavid du ColombierFixes a bug in equality comparison (eq, ne, and several other operators)
1337dd7cddfSDavid du Colombierthat made unequal operator objects occasionally appear to be equal on DOS
1347dd7cddfSDavid du Colombiersystems.
1357dd7cddfSDavid du Colombier
1367dd7cddfSDavid du ColombierFixes a bug in the bind operator that made it not work on packed arrays.
1377dd7cddfSDavid du Colombier
1387dd7cddfSDavid du ColombierChanges the internal representation of dictionaries so they can be
1397dd7cddfSDavid du Colombierexpanded or contracted dynamically.  Adds a new operator, setmaxlength, to
1407dd7cddfSDavid du Colombierchange the allocated size of a dictionary.
1417dd7cddfSDavid du Colombier
1427dd7cddfSDavid du ColombierChanges sstorei.h so that non-DOS compilers don't encounter the #pragma
1437dd7cddfSDavid du Colombierdirective used by Turbo C.
1447dd7cddfSDavid du Colombier
1457dd7cddfSDavid du ColombierRestores the display mode (on MS-DOS systems) when exiting.
1467dd7cddfSDavid du Colombier
1473ff48bf5SDavid du Colombier</pre>
1483ff48bf5SDavid du Colombier<h3><a name="V1.3_Fonts"></a>Fonts</h3>
1497dd7cddfSDavid du Colombier
1503ff48bf5SDavid du Colombier<pre>
1517dd7cddfSDavid du ColombierMakes undefined characters in the standard font display as tilde rather
1527dd7cddfSDavid du Colombierthan blank (or causing an error).  Unmapped character codes (those mapped
1537dd7cddfSDavid du Colombierto .notdef in the encoding) still display as nothing, per the PostScript
1547dd7cddfSDavid du Colombiermanual.
1557dd7cddfSDavid du Colombier
1563ff48bf5SDavid du Colombier</pre>
1573ff48bf5SDavid du Colombier<h3><a name="V1.3_Library"></a>Library</h3>
1587dd7cddfSDavid du Colombier
1593ff48bf5SDavid du Colombier<pre>
1607dd7cddfSDavid du ColombierAdds a new header file, gxbitmap.h, with some new documentation describing
1617dd7cddfSDavid du Colombierthe internal storage format for bitmaps.
1627dd7cddfSDavid du Colombier
1637dd7cddfSDavid du ColombierMakes numerous internal changes in the character / font cache, affecting
1647dd7cddfSDavid du Colombiermany of the routines in gxcache.c.
1657dd7cddfSDavid du Colombier
1667dd7cddfSDavid du ColombierFixes a bug in gz_draw_line / gz_fill_trapezoid that made nearly
1677dd7cddfSDavid du Colombierhorizontal lines display wrong.
1687dd7cddfSDavid du Colombier
1697dd7cddfSDavid du ColombierFixes a bug in gs_scale that made scaling not work if the coordinate
1707dd7cddfSDavid du Colombiersystem was rotated or skewed.
1717dd7cddfSDavid du Colombier
1727dd7cddfSDavid du ColombierExtends the font cache so it will handle characters rotated by multiples
1737dd7cddfSDavid du Colombierof 90 degrees.
1747dd7cddfSDavid du Colombier
1757dd7cddfSDavid du ColombierChanges the second argument of gx_path_bbox and gx_path_is_rectangle to be
1767dd7cddfSDavid du Colombiera gs_fixed_rect * rather than a fixed [4].
1777dd7cddfSDavid du Colombier
1787dd7cddfSDavid du ColombierChanges gs_matrix_rotate so it handles multiples of 90 degrees as a
1797dd7cddfSDavid du Colombierspecial case.
1807dd7cddfSDavid du Colombier
1817dd7cddfSDavid du ColombierChanges the definition of the gx_device structure to accommodate the new
1827dd7cddfSDavid du Colombierdevice operators, and adds corresponding library calls.
1837dd7cddfSDavid du Colombier
1847dd7cddfSDavid du ColombierChanges the type for a device color index from int to gx_color_index
1857dd7cddfSDavid du Colombier(equivalent to unsigned long).  ***NOTE***: this affects existing clients
1867dd7cddfSDavid du Colombierand drivers in a non-trivial way on MS-DOS systems.
1877dd7cddfSDavid du Colombier
1887dd7cddfSDavid du ColombierChanges gs_malloc and gs_free to take a client name string as an argument.
1897dd7cddfSDavid du Colombier
1903ff48bf5SDavid du Colombier</pre>
1913ff48bf5SDavid du Colombier<h3><a name="V1.3_Usage_procedures"></a>Usage procedures</h3>
1927dd7cddfSDavid du Colombier
1933ff48bf5SDavid du Colombier<pre>
1947dd7cddfSDavid du ColombierChanges the compilation rules for Unix systems to not use the -o and -c
1957dd7cddfSDavid du Colombiercompiler flags together, to be compatible with more versions of cc.
1967dd7cddfSDavid du Colombier
1977dd7cddfSDavid du ColombierChanges the gcc makefile to use $(GCC) rather than gcc as the compiler
1987dd7cddfSDavid du Colombiername.
1997dd7cddfSDavid du Colombier
2007dd7cddfSDavid du ColombierMoves the -1 flag for the MS-DOS compiler from the cc*.bat files to the
2017dd7cddfSDavid du Colombiermakefile.
2027dd7cddfSDavid du Colombier
2037dd7cddfSDavid du ColombierChanges CCDEBUG to CCFLAGS, and adds ASMFLAGS, in DOS makefile.
2047dd7cddfSDavid du Colombier
2057dd7cddfSDavid du ColombierAdds -DFOR80386 and /DFOR80386 to enable use of 80386 instructions in
2067dd7cddfSDavid du Colombierassembly code on DOS systems.
2077dd7cddfSDavid du Colombier
2087dd7cddfSDavid du ColombierMerges the DEBUG and gs_DEBUG switches.  There is now only a single DEBUG
2097dd7cddfSDavid du Colombierswitch that affects both the interpreter and the library.
2107dd7cddfSDavid du Colombier
2117dd7cddfSDavid du ColombierAdds a new compilation switch, -DNOPRIVATE, that makes private (static)
2127dd7cddfSDavid du Colombiervariables and procedures public for debugging and profiling (only needed
2137dd7cddfSDavid du Colombieron DOS systems).
2147dd7cddfSDavid du Colombier
2157dd7cddfSDavid du ColombierAdds the DOS executable (gs.exe and gs.map) to the distribution fileset.
2167dd7cddfSDavid du Colombier
2177dd7cddfSDavid du ColombierAdds new platform-specific code files, gp-*.c, for a few things like
2187dd7cddfSDavid du Colombierreading the clock.
2197dd7cddfSDavid du Colombier
2207dd7cddfSDavid du ColombierAdds a new documentation file, drivers.doc, that describes the interface
2217dd7cddfSDavid du Colombierbetween Ghostscript and device drivers.
2227dd7cddfSDavid du Colombier
2233ff48bf5SDavid du Colombier</pre>
2247dd7cddfSDavid du Colombier
2253ff48bf5SDavid du Colombier<hr>
2267dd7cddfSDavid du Colombier
2273ff48bf5SDavid du Colombier<h2><a name="Version1.2"></a>Version 1.2 (2/22/89)</h2>
2283ff48bf5SDavid du Colombier
2293ff48bf5SDavid du Colombier<h3><a name="V1.2_Interpreter"></a>Interpreter</h3>
2303ff48bf5SDavid du Colombier
2313ff48bf5SDavid du Colombier<pre>
2327dd7cddfSDavid du ColombierAdds the new facilities in version 25 of PostScript: //name for immediate
2337dd7cddfSDavid du Colombierlookup, packed arrays (setpacking, currentpacking, packedarray operators),
2347dd7cddfSDavid du Colombierand new font cache parameters (setcacheparams, currentcacheparams
2357dd7cddfSDavid du Colombieroperators).
2367dd7cddfSDavid du Colombier
2377dd7cddfSDavid du ColombierAdds new operators (setfileposition, currentfileposition) for random
2387dd7cddfSDavid du Colombieraccess to files.
2397dd7cddfSDavid du Colombier
2407dd7cddfSDavid du ColombierExtends readhexstring to take either a string or a file, just like token.
2417dd7cddfSDavid du Colombier
2427dd7cddfSDavid du ColombierFixes a bug that caused the 'for' operator (and a couple of others) to
2437dd7cddfSDavid du Colombierrandomly smash memory locations on PC platforms.
2447dd7cddfSDavid du Colombier
2453ff48bf5SDavid du Colombier</pre>
2463ff48bf5SDavid du Colombier<h3><a name="V1.2_Library"></a>Library</h3>
2477dd7cddfSDavid du Colombier
2483ff48bf5SDavid du Colombier<pre>
2497dd7cddfSDavid du ColombierRenames the init_device driver procedure as open_device, and adds a
2507dd7cddfSDavid du Colombiercorresponding close_device.
2517dd7cddfSDavid du Colombier
2527dd7cddfSDavid du ColombierAdds new procedures to read and set the cache limit values (implementing
2537dd7cddfSDavid du Colombierthe currentcacheparams and setcacheparams operators).
2547dd7cddfSDavid du Colombier
2553ff48bf5SDavid du Colombier</pre>
2563ff48bf5SDavid du Colombier<h3><a name="V1.2_Usage_procedures"></a>Usage procedures</h3>
2577dd7cddfSDavid du Colombier
2583ff48bf5SDavid du Colombier<pre>
2597dd7cddfSDavid du ColombierChanges the name of the Unix makefile to ux-cc-x.mak, and adds a new Unix
2607dd7cddfSDavid du Colombiermakefile, ux-gcc-x.mak, for using gcc instead of cc.  (The latter doesn't
2617dd7cddfSDavid du Colombieractually work yet.)
2627dd7cddfSDavid du Colombier
2637dd7cddfSDavid du ColombierChanges the name of the single built-in font from uglyfont.cp to
2647dd7cddfSDavid du Colombierugly10.cp.
2657dd7cddfSDavid du Colombier
2663ff48bf5SDavid du Colombier</pre>
2677dd7cddfSDavid du Colombier
2683ff48bf5SDavid du Colombier<hr>
2697dd7cddfSDavid du Colombier
2703ff48bf5SDavid du Colombier<h2><a name="Version1.1"></a>Version 1.1 (2/12/89)</h2>
2713ff48bf5SDavid du Colombier
2723ff48bf5SDavid du Colombier<h3><a name="V1.1_Interpreter"></a>Interpreter</h3>
2733ff48bf5SDavid du Colombier
2743ff48bf5SDavid du Colombier<pre>
2757dd7cddfSDavid du ColombierMakes the scanner treat ^Z (ASCII code 26) as whitespace: it erroneously
2767dd7cddfSDavid du Colombiertreated ^R (ASCII code 22, or octal 26) as whitespace.
2777dd7cddfSDavid du Colombier
2787dd7cddfSDavid du ColombierMakes the token and readline operators, and the syntax for comments,
2797dd7cddfSDavid du Colombierrecognize \r (code 13), \n (code 10), and \r\n as equivalent end-of-line
2807dd7cddfSDavid du Colombierindicators.  The token and readline operators will skip over any of these
2817dd7cddfSDavid du Colombiersequences at the end of a token or line respectively, and a comment will
2827dd7cddfSDavid du Colombierread through any of these sequences.  The other file operators (read,
2837dd7cddfSDavid du Colombierwrite, readstring, writestring) do nothing special with these characters.
2847dd7cddfSDavid du Colombier
2857dd7cddfSDavid du ColombierChanges the debug switch name from -D to -Z.  Adds a -D switch for
2867dd7cddfSDavid du Colombierdefining names in systemdict from the command line.  Defines -DDEBUG for
2877dd7cddfSDavid du Colombierprinting out debugging information during initialization, and -DNODISPLAY
2887dd7cddfSDavid du Colombierfor suppressing display output.
2897dd7cddfSDavid du Colombier
2907dd7cddfSDavid du ColombierCorrects a bug that prevented the error machinery from working -- in
2917dd7cddfSDavid du Colombierversion 1.0, errors always dumped the stacks and aborted interpretation.
2927dd7cddfSDavid du Colombier
2937dd7cddfSDavid du ColombierCorrects a bug that made eq and ne not work for strings.
2947dd7cddfSDavid du Colombier
2957dd7cddfSDavid du ColombierMakes the atan (arctangent) operator normalize its results according to
2967dd7cddfSDavid du Colombierthe PostScript convention.
2977dd7cddfSDavid du Colombier
2987dd7cddfSDavid du ColombierMakes the div operator check for zero divisor.
2997dd7cddfSDavid du Colombier
3007dd7cddfSDavid du ColombierMakes unimplemented operators (resetfile, echo, save, restore, strokepath,
3017dd7cddfSDavid du Colombierreversepath) truly undefined.
3027dd7cddfSDavid du Colombier
3037dd7cddfSDavid du ColombierMakes the interactive loop exit gracefully on end-of-file: in version 1.0
3047dd7cddfSDavid du Colombierthis caused an infinite loop.
3057dd7cddfSDavid du Colombier
3067dd7cddfSDavid du ColombierImplements the status operator.
3077dd7cddfSDavid du Colombier
3087dd7cddfSDavid du ColombierCorrects a bug that made the 'for' operator deliver garbage values if one
3097dd7cddfSDavid du Colombieror more of the operands (start, increment, end) was a real.
3107dd7cddfSDavid du Colombier
3117dd7cddfSDavid du ColombierCorrects a bug that made the arc and arcn operators not pop their operands
3127dd7cddfSDavid du Colombierfrom the stack.
3137dd7cddfSDavid du Colombier
3147dd7cddfSDavid du ColombierCorrects a bug that made the kshow operator crash the interpreter.
3157dd7cddfSDavid du Colombier
3167dd7cddfSDavid du ColombierCorrects a bug that made the print operator fail on machines that don't
3177dd7cddfSDavid du Colombierpass structure arguments by simply pushing the contents of the structure.
3187dd7cddfSDavid du Colombier
3197dd7cddfSDavid du ColombierAdds a new operator, imagecharpath, to convert images to
3207dd7cddfSDavid du Colombieraddcharpath-compatible outlines.
3217dd7cddfSDavid du Colombier
3227dd7cddfSDavid du ColombierChanges alloc and alloc_free to use char * rather than byte *, and
3237dd7cddfSDavid du Colombieralloc_free to return void rather than int, making them compatible with the
3247dd7cddfSDavid du Colombierlibrary's expectations and with malloc/free.
3257dd7cddfSDavid du Colombier
3267dd7cddfSDavid du ColombierExplicitly casts all expressions of the form (ptr1 - ptr2) used as
3277dd7cddfSDavid du Colombierprocedure arguments to unsigned, to handle an incompatibility between
3287dd7cddfSDavid du ColombierTurbo C versions 1.5 and 2.0.
3297dd7cddfSDavid du Colombier
3307dd7cddfSDavid du ColombierChanges some of the internal conventions for operators: operators that
3317dd7cddfSDavid du Colombierpush on the operand stack must check for overflow explicitly, and
3327dd7cddfSDavid du Colombieroperators that modify the execution stack must return a special code.
3337dd7cddfSDavid du Colombier(See oper.h for details.)
3347dd7cddfSDavid du Colombier
3353ff48bf5SDavid du Colombier</pre>
3363ff48bf5SDavid du Colombier<h3><a name="V1.1_Initialization"></a>Initialization (ghost.ps, gfonts.ps)</h3>
3377dd7cddfSDavid du Colombier
3383ff48bf5SDavid du Colombier<pre>
3397dd7cddfSDavid du ColombierModifies ghost.ps and gfonts.ps so they print debugging information only
3407dd7cddfSDavid du Colombierif the name DEBUG is defined.  (Presumably the user will set this from the
3417dd7cddfSDavid du Colombiercommand line with -DDEBUG.)
3427dd7cddfSDavid du Colombier
3437dd7cddfSDavid du ColombierChanges ghost.ps so it initializes the nominal screen size to 640 x 350 on
3447dd7cddfSDavid du ColombierMS-DOS systems as before, but to 612 x 792 on Unix systems, which is an
3457dd7cddfSDavid du Colombier8.5" x 11" page at 72 pixels per inch.
3467dd7cddfSDavid du Colombier
3473ff48bf5SDavid du Colombier</pre>
3483ff48bf5SDavid du Colombier<h3><a name="V1.1_Library"></a>Library</h3>
3497dd7cddfSDavid du Colombier
3503ff48bf5SDavid du Colombier<pre>
3517dd7cddfSDavid du ColombierCorrects a bug that made the fill and eofill operators (gs_fill and
3527dd7cddfSDavid du Colombiergs_eofill) not perform a newpath afterward.
3537dd7cddfSDavid du Colombier
3547dd7cddfSDavid du ColombierCorrects the bug that made thin, nearly horizontal lines display wrong (as
3557dd7cddfSDavid du Colombiera series of disconnected dots) in the MS-DOS implementation.
3567dd7cddfSDavid du Colombier
3577dd7cddfSDavid du ColombierFixes a bug in the EGA driver that often made it fill rectangular regions
3587dd7cddfSDavid du Colombierwith black around information being displayed in white.
3597dd7cddfSDavid du Colombier
3607dd7cddfSDavid du ColombierCompletely changes the internal representation of outline fonts, and
3617dd7cddfSDavid du Colombierchanges btoi.ps (a Ghostscript language program for converting bitmaps to
3627dd7cddfSDavid du Colombieroutlines) to use a new library call, gs_imagecharpath.
3637dd7cddfSDavid du Colombier
3647dd7cddfSDavid du ColombierChanges the extension for outline font files from .gf to .cp.
3657dd7cddfSDavid du Colombier
3667dd7cddfSDavid du ColombierAdds a new debugging switch, q, that traces all rectangle fill operations.
3677dd7cddfSDavid du Colombier
3687dd7cddfSDavid du ColombierAdds a new debugging switch, v, that traces all device-level output calls.
3697dd7cddfSDavid du Colombier
3707dd7cddfSDavid du ColombierExplicitly casts pointer differences passed as procedure arguments, as in
3717dd7cddfSDavid du Colombierthe interpreter.
3727dd7cddfSDavid du Colombier
3737dd7cddfSDavid du ColombierMakes stringwidth work if there is no current point.  In version 1.0, this
3747dd7cddfSDavid du Colombiergave a nocurrentpoint error.
3757dd7cddfSDavid du Colombier
3763ff48bf5SDavid du Colombier</pre>
3773ff48bf5SDavid du Colombier<h3><a name="V1.1_Usage_procedures"></a>Usage procedures</h3>
3787dd7cddfSDavid du Colombier
3793ff48bf5SDavid du Colombier<pre>
3807dd7cddfSDavid du ColombierChanges the name of the 'read me' file from READ.ME to README.
3817dd7cddfSDavid du Colombier
3827dd7cddfSDavid du ColombierRemoves a bogus line (invoking the 'mcopy' utility) from the makefile.
3837dd7cddfSDavid du Colombier
3847dd7cddfSDavid du ColombierSplits up the makefile into a generic part (ghost.mak) and
3857dd7cddfSDavid du Colombierplatform-specific parts (dos-ega.mak, unix-x11.mak).  The latter are what
3867dd7cddfSDavid du Colombieris actually executed.
3877dd7cddfSDavid du Colombier
3887dd7cddfSDavid du ColombierPuts the definitions of the DEBUG and gs_DEBUG compilation flags into the
3897dd7cddfSDavid du Colombiermakefile instead of in ghost.h and gx.h respectively.
3907dd7cddfSDavid du Colombier
3917dd7cddfSDavid du ColombierChanges the names of the documentation files to be a little less cryptic.
3927dd7cddfSDavid du ColombierChanges all the file names to lower-case in the documentation.  Adds
3937dd7cddfSDavid du Colombierinstallation information to make.doc.
3947dd7cddfSDavid du Colombier
3957dd7cddfSDavid du ColombierChanges all function definitions (but not prototype declarations) to ANSI
3967dd7cddfSDavid du Colombiersyntax, and adds a preprocessing step (ansi2knr) to convert them to K&amp;R
3977dd7cddfSDavid du Colombiersyntax on Unix systems.
3987dd7cddfSDavid du Colombier
3997dd7cddfSDavid du ColombierChanges the normal MS-DOS link configuration to not assume the presence of
4007dd7cddfSDavid du Colombieran 80x87 coprocessor, and describes how to increase performance if a
4017dd7cddfSDavid du Colombiercoprocessor is present.
4027dd7cddfSDavid du Colombier
4037dd7cddfSDavid du ColombierChanges the names of all the interpreter .c files, except stream.c, to
4047dd7cddfSDavid du Colombierbegin with 'i'.
4057dd7cddfSDavid du Colombier
4063ff48bf5SDavid du Colombier</pre>
4077dd7cddfSDavid du Colombier
4083ff48bf5SDavid du Colombier<hr>
4093ff48bf5SDavid du Colombier
4103ff48bf5SDavid du Colombier<h2><a name="Version1.0"></a>Version 1.0 (8/11/88)</h2>
4113ff48bf5SDavid du Colombier
4123ff48bf5SDavid du Colombier<pre>
4137dd7cddfSDavid du ColombierFirst version released to the public.
4147dd7cddfSDavid du Colombier</pre>
4157dd7cddfSDavid du Colombier
4167dd7cddfSDavid du Colombier<!-- [3.0 begin visible trailer] =========================================== -->
4177dd7cddfSDavid du Colombier<hr>
4187dd7cddfSDavid du Colombier
4193ff48bf5SDavid du Colombier<p><small>Copyright &copy; 1996, 1997, 1998 Aladdin Enterprises.
4203ff48bf5SDavid du ColombierAll rights reserved.</small>
4217dd7cddfSDavid du Colombier
422*593dc095SDavid du Colombier<p>This software is provided AS-IS with no warranty, either express or
423*593dc095SDavid du Colombier<p>implied.
424*593dc095SDavid du Colombier<p>
425*593dc095SDavid du Colombier<p>This software is distributed under license and may not be copied,
426*593dc095SDavid du Colombier<p>modified or distributed except as expressly authorized under the terms
427*593dc095SDavid du Colombier<p>of the license contained in the file LICENSE in this distribution.
428*593dc095SDavid du Colombier<p>
429*593dc095SDavid du Colombier<p>For more information about licensing, please refer to
430*593dc095SDavid du Colombier<p>http://www.ghostscript.com/licensing/. For information on
431*593dc095SDavid du Colombier<p>commercial licensing, go to http://www.artifex.com/licensing/ or
432*593dc095SDavid du Colombier<p>contact Artifex Software, Inc., 101 Lucas Valley Road #110,
433*593dc095SDavid du Colombier<p>San Rafael, CA  94903, U.S.A., +1(415)492-9861.
4347dd7cddfSDavid du Colombier
4357dd7cddfSDavid du Colombier<p>
436*593dc095SDavid du Colombier<small>Ghostscript version 8.53, 20 October 2005
4377dd7cddfSDavid du Colombier
4387dd7cddfSDavid du Colombier<!-- [3.0 end visible trailer] ============================================= -->
4397dd7cddfSDavid du Colombier
4407dd7cddfSDavid du Colombier</body>
4417dd7cddfSDavid du Colombier</html>
442