[ale] LaserJet5L

Randy Dunlap rdunlap at atlanta.nsc.com
Wed Jul 31 09:13:18 EDT 1996


|From: bryan at cc.gatech.edu (Bryan E. Rank)
|Subject: [ale] LaserJet5L
|Date: Wed, 31 Jul 1996 08:49:41 -0400 (EDT)
|Hello,
|I posted earlier with a problem about getting one of the new Hewlett
|Packard LaserJet5Ls to work.  I think that my problem was not an
|outdated version of ghostscript or anything like that, I believe that I
|was trying to print with a higher resolution than the printer will
|support out of the box (it comes with one meg of ram).
|
|This is my guess.  I say this because the documentation from Aladdin
|mentioned something about resolution being linked to the amount of
|memory that you had on your printer (I guess I always thought memory
|was a function of speed or with a non ps printer the amount of fonts.
|To tell the truth, I never thought about it very much).  When I bumped
|it down to 300X300 everything printed fine.
|
|If my reasoning if flawed here, I would love for someone to set me
|straight, otherwise, if you want the 5L to print 600X600, you can plan
|on buying more memory.
|
|Can someone point me at some literature besides the printing HOWTOs.
|Don't get me wrong, they were great, I would just like to know a little
|more about why the above my explanation is right or wrong?
|
|
|Thanks very much,
|
|
|Bryan
|
|

This makes a lot of sense to me.  I worked on the firmware for a
laser printer at a Norcross company several years ago.
Our printer could print 300x300 dpi full-page graphics since it had
4 MB of RAM.

300x300 dpi = 300 * 300 bits per square inch = 90000 bits/sq.in.
                                          / 8 = 11250 bytes/sq.in.

Laser printers don't print on a full 8.5x11 inch piece of paper.
They usually have about a 1/4 inch unprintable area on each side,
top, and bottom.  Ignoring this:

8.5 * 11 = 93.5 sq.in.
so a full page of 300x300 graphics requires 11250 * 93.5 = 1,051,875 bytes

or, considering the unprintable area,
8 * 10.5 = 84 sq.in.
so a full page of 300x300 graphics requires 11250 * 945,000 bytes

while 1 MB = 1,048,576 bytes.

This leaves some RAM for firmware control/data space as well.

Other considerations:

HP LaserJets now come with built-in fonts, most of which are
scalable.  This also requires some memory and time.

On the other hand, most HP LaserJets now also include data compression
technology so that repeated data is compressed into much less space
in their internal RAM.  (The printer that I worked on had 4 MB of
RAM to support many downloaded fonts.  It had only a few internal
fonts and it couldn't scale any of them.  However, it could rotate
them, but that required a good bit of RAM also.)

Next, it's very difficult to completely fill up a page with graphics
data in most settings.  Your situation could be different though.

Also, going to 600x600 dpi quadruples the amount of RAM needed
compared to 300x300 dpi (not just doubles it), so a full page of
graphics at 600x600 dpi, considering unprintable areas and no
internal data compression, requires:

600 * 600 = 360000 bits/sq.in. = 45000 bytes/sq.in.

45000 * 84 sq.in. = 3,780,000 bytes

so 4 MB of RAM would be required in the raw memory sense (no data
compression, etc.).

However, you should be able to print (small) amounts of graphics
at 600x600 dpi if you mostly print text on a page (on some
laser printers at least).  This is because most smart printers
use a "banding" technique in which only a relatively small
horizontal strip (maybe 1 inch wide) is imaged into RAM at any
one time, so this requires much less RAM.
As the RAM image is transferred to the printer, the printer engine
can generate interrupts saying that one raster row has completed
printing, so the printer firmware can proceed to imaging the next
raster row in the internal RAM.
So if you are printing mostly text, this requires little memory
storage and most of it could be used for storing your graphics image.
Of course, this really depends on the printer firmware architects,
designers, and developers/implementers.

~Randy

P.S.:  Printer speed is controlled more by the printer's CPU.
Older HP's used Motorola 68K family, then HP moved to the National
32-bit CPU with graphics extensions, and now they have moved on to
RISC CPUs.






More information about the Ale mailing list