tower@AI.MIT.EDU (Leonard H. Tower Jr.) (07/03/89)
[ This software will soon be available for anonymous uucp on osu-cis and anonymous ftp on gatekeeper.dec.com. ] [ Note Peter is on vacation for about two more weeks. His mail is being saved! ;-} ] 1) Forwarded-For: ghost@aladdin.com (Peter Deutsch) [ I hobbled this text together, don't blame any poor editing on Peter. -len ] Ghostscript 1.3 is now available for anonymous ftp from prep.ai.mit.edu in file /u/emacs/ghostscript-1.3.tar.Z. This release lacks many of the features I was hoping to include (specifically, the ability to read BDF or other readily available fonts) but it does fix a number of bugs and provide a few new features, and I thought it would be better to get it out now rather than wait yet another two months (which is my target date for release 1.4). The 1.3 data from history.doc is appended at the end. Send bug reports to bug-ghostscript@prep.ai.mit.edu or gnUSENET newsgroup gnu.ghostscript.bug (but not both; they are the same thing). 2) Forwarded-For: Snoopy <nosun!illian!sopwith!snoopy@sun.com> Ghostscript version 1.3 is now available via anonymous uucp from illian. Peter says he has fixed the gxfill/find_cross_y bug which was responsible for incorrect painting of some of the characters ('K', 'h', etc.). Yea! A list of changes and fixes can be found in history.doc. Some of these changes are non-trivial. Peter ran out of time before leaving on a month long world tour. Therefore: No testing was done on the X-windows device. The Sunview driver(s) didn't make it in. The big pile of stuff I sent, including Tek61vp02 and dot-matrix drivers, multiple-device support, Hershey font support, BSD time functions, and a new color half-toning algorithm didn't make it in. Not all of the recent fixes posted to gnu.ghostscript.bug made it in. Peter is planning on a 1.4 release sometime in mid-August. The 1.3 release includes binary for msdos systems, since not everyone has the "Borland Turbo C system" which is required to compile it. To save on connect time, I have split the package into three pieces, so that you can download only the files you need: Ghostscript version 1.3 source: floppy from L. Peter Deutsch, floppy_to_unix transfer by Daryl V. McDaniel, packaged by Snoopy Root: /u/public/gnu/ghostscript/gs_1.3_* Files: gs_1.3_rundoc_tz - runtime support and documention. 51221 bytes (everyone needs this) gs_1.3_source_tz.? - source code and makefiles. Three parts, 1-3. Parts 1 & 2 are 102400 bytes, part 3 is 59903 bytes. (All unix sites need this, msdos sites wishing to make modifications need this. Note that msdos sites need the Borland Turbo C system, version 1.5 or later to compile this.) gs_1.3_msdos_tz.? - Files needed only by msdos sites. Three parts, 1-3. Parts 1 & 2 are 102400 bytes, part 3 is 8383 bytes. (Unix sites do not need this. All msdos sites need this. Includes executables for msdos sites without the Borland Turbo C system.) To reduce the deluge of mail, the phone number for illian is 503-591-9742, the anon uucp account name is "Uanon", with no password. You may dial in anytime (24 hours/7 days). There is a 'soft' time limit of 40 minutes during the day and 2 hours at night. ('Soft' meaning it doesn't kick you off until the current file has completed.) Telebit sites should set s50=255 to avoid connecting at 2400 bps. These are the usual compressed tar archives. I've started working on bringing this up on sopwith, and I found that the lines all end with control-m, which confuses more(1) and cc(1) to no end. (must be a msdos-ism) Stripping these off makes cc much happier. Peter is working on splitting system/device dependant code into seperate files, to avoid #ifdefs. I suspect that the file gp-bsd.c is really more like gp-sunos.c. The documentation mentions the file ugly10.cp, the code uses uglyfont.cp. Ghost.doc lists some new operators as not yet implemented (makedevice, setdevice, currentdevice...). Some/all of these are implemented, and in use. The drivers.doc file explaination of *draw_line() may be confusing. He is talking about the standard orientation with the y origin at the bottom of the page. However, both the X windows and EGA drivers have the y origin at the top, and increasing going down. You can reach the author (Peter) at ...{uunet,parcplace.com}!aladdin!ghost. (Note that Peter will be off the net for 3-4 weeks.) Flames about the packaging should be directed at me (Snoopy). _____ .-----. /_____\ Snoopy ./ RIP \. /_______\ qiclab!sopwith!snoopy | | |___| parsely!sopwith!snoopy | tekecs | |___| sun!nosun!illian!sopwith!snoopy |_________| "I *was* the next man!" -Indy 3) This file, history.doc, describes the changes in the various releases of Ghostscript. This file applies to version 1.3 of Ghostscript. For an overview of Ghostscript and a list of the documentation files, see README. Version 1.3 (6/20/89) =========== This release should have had a lot more things in it, but time pressure and the already long delay in getting it out made it necessary to push it out the door in an incomplete state (e.g., no testing on X systems whatsoever). Interpreter ----------- Makes -d and -D equivalent on the command line. Adds a new switch -s / -S that defines a name as a string rather than a token. Arranges things so that if -sLIB=_a_prefix_ is defined on the command line, (filename) run will look for _a_prefix_filename before giving up if filename isn't the name of an accessible file. Changes showpage from an operator to a procedure. The definition of showpage in ghost.ps does a copypage, beeps the console, waits for the user to type a character (normally a <return>, since line buffering is always enabled), and then does an erasepage and an initgraphics. Adds a new initialization file, gdevs.ps, containing device-dependent parameters. The default window size for X Windows is properly set to 612 x 792, i.e., 8.5" x 11". Adds a new optional initialization file, statusd.ps, that provides dummy definitions for the names found in statusdict on LaserWriters. Adds a new operator, getenv, to get information from the shell environment. Adds a new predefined operator, defaultdevicename, that returns either (X) or (EGA) according to how the interpreter was built. Adds a new type, devicetype, and new operators deviceparams, getscanlines, makedevice, makeimagedevice, and setdevice. Changes currentdevice to return a device object rather than a set of parameters. Makes the scanner recognize reals with 'e' exponent notation, and handle reals with more than 9 digits. Fixes a bug that made names starting with digits read incorrectly. Fixes a bug in the exp operator that made it not pop its first argument from the stack. Fixes a bug in the rand operator that made it return negative values about half the time. Fixes a bug in equality comparison (eq, ne, and several other operators) that made unequal operator objects occasionally appear to be equal on DOS systems. Fixes a bug in the bind operator that made it not work on packed arrays. Changes the internal representation of dictionaries so they can be expanded or contracted dynamically. Adds a new operator, setmaxlength, to change the allocated size of a dictionary. Changes sstorei.h so that non-DOS compilers don't encounter the #pragma directive used by Turbo C. Restores the display mode (on MS-DOS systems) when exiting. Fonts ----- Makes undefined characters in the standard font display as tilde rather than blank (or causing an error). Unmapped character codes (those mapped to .notdef in the encoding) still display as nothing, per the PostScript manual. Library ------- Adds a new header file, gxbitmap.h, with some new documentation describing the internal storage format for bitmaps. Makes numerous internal changes in the character / font cache, affecting many of the routines in gxcache.c. Fixes a bug in gz_draw_line / gz_fill_trapezoid that made nearly horizontal lines display wrong. Fixes a bug in gs_scale that made scaling not work if the coordinate system was rotated or skewed. Extends the font cache so it will handle characters rotated by multiples of 90 degrees. Changes the second argument of gx_path_bbox and gx_path_is_rectangle to be a gs_fixed_rect * rather than a fixed [4]. Changes gs_matrix_rotate so it handles multiples of 90 degrees as a special case. Changes the definition of the gx_device structure to accommodate the new device operators, and adds corresponding library calls. Changes the type for a device color index from int to gx_color_index (equivalent to unsigned long). ***NOTE***: this affects existing clients and drivers in a non-trivial way on MS-DOS systems. Changes gs_malloc and gs_free to take a client name string as an argument. Usage procedures ---------------- Changes the compilation rules for Unix systems to not use the -o and -c compiler flags together, to be compatible with more versions of cc. Changes the gcc makefile to use $(GCC) rather than gcc as the compiler name. Moves the -1 flag for the MS-DOS compiler from the cc*.bat files to the makefile. Changes CCDEBUG to CCFLAGS, and adds ASMFLAGS, in DOS makefile. Adds -DFOR80386 and /DFOR80386 to enable use of 80386 instructions in assembly code on DOS systems. Merges the DEBUG and gs_DEBUG switches. There is now only a single DEBUG switch that affects both the interpreter and the library. Adds a new compilation switch, -DNOPRIVATE, that makes private (static) variables and procedures public for debugging and profiling (only needed on DOS systems). Adds the DOS executable (gs.exe and gs.map) to the distribution fileset. Adds new platform-specific code files, gp-*.c, for a few things like reading the clock. Adds a new documentation file, drivers.doc, that describes the interface between Ghostscript and device drivers. enjoy -len