shull@WHARTON-10.ARPA ("CHRISTOPHER E. SHULL") (08/03/86)
Thanks to all of you who took time to address my questions on DIA/DCA
and PostScript documentation for developers. The results were pretty cut
and dried. I wasn't too worried about getting lots of responses on
PostScript, but am particularly grateful for the references on DIA/DCA.
The rest of this message contains extracts of the most useful responses:
To write DIA/DCA utilities, Henry Schaffer,
<ecsvax!hes%mcnc.csnet@CSNET-RELAY.ARPA>, suggested some IBM manuals,
including:
GG24-1604 Office Systems Interconnection: Guide to Connecting
non-DIA Systems to DISOSS, March 1984
(He has this, and it is mainly on how non-DIA IBM
systems can use SNA and CICS to talk to DIA.)
SC30-3096 DISOSS/370 Version 3 Application Programming,
GG24-1614 DISOSS Application Interface: Programming Guidelines,
SC30-3093 Manual for system programmers planning a DISOSS office.
He also commented:
> The work the Navy has sponsored on the DIF file specifications/translation
> (not Visicorp DIF) has included DCA. Perhaps someone at the Dept. of
> Navy Office Automation and Communication (DONOACS) could help. I heard
> about this from Ted Holden (...seismo!elsie!imsvax!ted) at IMS Inc. where
> they have worked on a contract concerning this. Their understanding of
> DCA may be proprietary. Ted's comment on DCA, "its functionality and
> structure are essentially those of a 1965 typewriter."
>
> I would very much like to find out about a DCA definition. I've been
> thinking of getting a copy of Displaywriter III and writing some files
> and then looking at them to see how the different features are done.
>
> --henry schaffer n c state univ ...mcnc!ecsvax!hes (uucp)
> hes@ecsvax.BITNET
Paul L. Allen, <nike!uw-beaver!ssc-vax!bcsaic!paula@ucbvax.berkeley.edu>,
made the following comments:
> The documentation you want for DIA/DCA is available from IBM. We have
> had several projects here involving DIA and DCA. I don't have access to
> the manuals anymore, so I can't give you titles. Call IBM. If IBM
> doesn't know what you are talking about, email me. There is a remote
> chance I can locate our old manuals and get you document numbers and
> titles.
>
> DCA is an enormously complex architecture for the representation of
> documents. The manual defines *lots* of "exception" conditions. If you
> are reading a file produced by an IBM product, you probably don't have
> to worry about these. If you are creating a file to be sent to an IBM
> system, be aware that no two IBM DCA-based products implement the same
> subset of DCA. For instance, DCA specifies that the max length of a
> Body Text vector is 65K bytes. However, a Displaywriter (TextPack 4)
> will hang if it receives a BT vector exceeding about 1200 bytes!
> Thus you need not only to avoid the exception conditions defined by DCA,
> but also to understand the specific limitations of the device you are
> going to.
>
> DIA is a protocol for the exchange of documents. It includes the
> specification of "envelopes" that enclose documents. I don't have
> direct experience with it, but I do know that it is not safe to assume
> that an IBM implementation of DIA conforms exactly to their published
> definition.
>
> Paul L. Allen
> Boeing Computer Services Artificial Intelligence Center
> ...!uw-beaver!ssc-vax!bcsaic!paula
To write PostScript drivers, the references of choice are the:
"PostScript Language Reference Manual"
ISBN 0-201-10174-2
"PostScript Language Tutorial and Cookbook"
ISBN 0-201-10179-3.
Both are written by:
Adobe Systems Incorporated
1870 Embarcadero Rd.
Suite 100
Palo Alto, CA 94303
(415) 852-0271
and published by
Addison-Wesley Publishing Company, Inc.
Reading, MA 01867
(617) 944-3700
> From: Glenn Reid <adobe!greid@decwrl.DEC.COM>
>
> > 3. If I want to write a driver for an Apple LaserWriter, do I need
> > any documents from Apple? If so, what, and where can I get one?
>
> Not in the sense that you would be writing a PostScript driver.
> There are some LaserWriter-dependent features that you might want
> to exploit (like manualfeed, for instance). Apple has a document
> entitled "Inside LaserWriter" that you might want to look at.
>
> > 4. Is a PostScript printer a PostScript printer a PostScript printer?
> > Or, in other words, will a driver for an Apple LaserWriter drive
> > a QMS printer, a DataProducts printer and a Allied Lynotype
> > typesetter without modification, or are the modifications merely
> > minimized?
>
> Yes, a PostScript printer is a PostScript printer, in the spirit of
> your question. There are certain differences among them, of course,
> but they differ only in terms of "features". For instance, the
> DataProducts has more than one paper tray, the Linotype does not have
> manualfeed, but it does have a hard disk and a filesystem accessible
> from PostScript, and so on. If you stick to the standard PostScript
> language, you need not make any modifications. If you attempt to take
> advantage of the features of the different printers from your
> application, be careful to check for their existence first (in
> statusdict, typically; use "known" or "where") to avoid problems.
>
> Glenn Reid
> Technical Staff
> Adobe Systems Incorporated
> (415) 852-0271
>
>
>
> From: rusty@weyl.berkeley.edu (Rusty Wright)
>
> apparently not all postscript printers are created equal. on the unix
> tex distribution tape from the univ. washington there is a tex driver
> for the the apple laserwriter. i tried using it with the qms
> postscript printer and nothing ever came out. i can't remember if
> subsequent (non-tex) jobs would print ok without powering down the
> printer.
>
>
>
> From: reid@decwrl.DEC.COM (Brian Reid)
>
> It is possible to write a PostScript program that will not work on
> every printer. It is equally possible to write a Pascal program that
> will not work on every computer. However, there is a set of rules, all
> of which are documented, such that if you follow them, your PostScript
> program will work anywhere.
>
> In the particular case of the TeX driver, its problem is that it messes
> around with the transformation matrix. The QMS 1200 printer feeds paper
> long-edge-first, while the Apple printer feeds paper short-edge-first
> (rotated 90 degrees from that). This means that the default
> transformation matrices are different--rotated, translated, etc.
>
> If you use "setmatrix", to forcibly stuff a transformation matrix out
> there (rather than concatenating them from the default matrix), then
> you will have created a machine-dependent PostScript file (unless the
> matrix that you are setting was created properly).
>
> Brian Reid
>
>
>
> From: nike!uw-beaver!ssc-vax!bcsaic!paula@ucbvax.berkeley.edu
> Date: Mon, 14 Jul 86 16:31:45 pdt
> Subject: Re: Documentation on DIA/DCA and PostScript for developers
>
> The documentation you want for DIA/DCA is available from IBM. We have
> had several projects here involving DIA and DCA. I don't have access to
> the manuals anymore, so I can't give you titles. Call IBM. If IBM
> doesn't know what you are talking about, email me. There is a remote
> chance I can locate our old manuals and get you document numbers and
> titles.
>
> The best documentation I have seen for Postscript/LaserWriter comes from
> Adobe Systems Inc. We purchased the Adobe documentation from Apple. It
> came in a 3-ring binder labelled "Macintosh: Inside LaserWriter". Along
> with a bunch of stuff specific to the Mac, it includes four major
> sections: "The Postscript Language Manual", "The Postscript Cookbook",
> "The Adobe Font Manual", and "The Advanced Users Supplement". At least
> the first two sections are published separately in paperback by
> Addison-Wessley. All four sections are copyright by Adobe Stems. If
> you are writing code for the LaserWriter, you *need[
> Supplement.
>
> All Postscript printers execute Postscript "programs". The "Inside
> LaserWriter" manual contains a description of the way a LaserWriter
> reports status and such. It is not clear whether this is part of the
> Postscript standard or just Apple's implementation. The major part (the
> Postscript converter) of your driver will work with any Postscript
> printer. The part that actually communicates with the printer might be
> different for different printers.
>
> Hope this helps.
> Paul
>
> Paul L. Allen
> Boeing Computer Services Artificial Intelligence Center
> ...!uw-beaver!ssc-vax!bcsaic!paula
In summary, I have ordered the IBM references, and I already had the
"PostScript Language Reference Manual" and "PostScript Language Tutorial
and Cookbook". I suspect that they contain enough of the "The Adobe Font
Manual" and "The Advanced Users Supplement" sections of "Inside LaserWriter"
that I do not plan to buy "Inside LW".
Thanks again for your assistance!
-Chris
Christopher E. Shull
Decision Sciences Department
The Wharton School Shull@Wharton-10.ARPA
University of Pennsylvania
Philadelphia, PA 19104-6366 215/898-5930
------