Path: utzoo!utgpu!watmath!att!tut.cis.ohio-state.edu!ucbvax!hplabs!hp-pcd!hpvcfs1!neff From: neff@hpvcfs1.HP.COM (Dave Neff) Newsgroups: comp.sys.atari.st Subject: Re: deskjet pageformatter Message-ID: <2150014@hpvcfs1.HP.COM> Date: 8 Aug 89 19:15:21 GMT References: <8908071137.AA00916@ucbvax.Berkeley.EDU> Organization: Hewlett Packard, Vancouver, WA Lines: 51 Regarding the DeskJet "pageformatter". The DeskJet and DeskJet+ DOES NOT HAVE A PAGEFORMATTER. It never has, it never will. You cannot do random cursor positions on the page. In order to allow for mixed text and graphics the printers try to insure you can do negative cursor moves of the maximum point size of text, which is 2/3 of an inch on the DeskJet+ (36 point theoretical maximum font). Hence you can send 2/3 of an inch of text, back up the cursor 2/3 an inch and then send 2/3 an inch of graphics. The actual mixed text and graphics algorithm is more subtle and uses variable lookahead based on the actual point sizes used in order to give more reliable results (if there are lots of font/enhancement changes its not always possible to even back up 2/3 of an inch) but the above description is the basic concept. Not only does the DeskJet and DeskJet+ not have a pageformatter it DOES NOT HAVE A BIT IMAGE BUFFER. Commands to print characters are sent to a custom IC, which looks them up in ROM and prints them. Hence two overlapping A characters are treated the same as an A character overlapping a B charater. THERE IS NO BIT IMAGE BUFFER WHERE CHARACTERS ARE SIMPLY ORED TOGETHER. This is the reason ink will puddle if characters are printed on top of one another. The DeskJet and DeskJet+ printers lack a page formatter and a bit image buffer in order reduce the cost of the printer by reducing the need for RAM. We just need a couple K of RAM to build commands (or vectors) for the custom IC when then uses DMA to get the commands and print the text. The firmware never sees the bit image of the text. The firmware does see the bit image of the graphics but it is stored in a special form needed by the custom IC for printing the graphics and for this, and other reasons, overlapping graphics are not ORed together either. Notice that text and graphics are always printed in separate passes as a result of the lack of a bit image buffer. In some respects using a bit image buffer in the DeskJet+ would make more sense than the current scheme but it was leveraged from the DeskJet which lacked enough RAM for a bit image buffer (and the custom IC does not support a bit image buffer). It's hard to be any clearer without going into much more technical detail but I hope this helps. The DeskJets have a "format buffer" which stores approximately 2/3 inch of text (and in the case of DeskJet+ 1/3 of an inch of graphics), not a page formatter. The DeskJets have a "vector buffer" (well, actually 2 such buffers) for sending commands to the custom chip, not a bit image buffer. For more details about the inner workings of the DeskJet printers try to get the October, 1989 issue of the HP Journal. It goes into more detail on the above concepts. Happy Printing, Dave Neff neff@hpvcfs1.HP.COM