Subject: Re: 501-1910 SBus
To: None <port-sparc@netbsd.org>
From: der Mouse <mouse@Rodents.Montreal.QC.CA>
List: port-sparc
Date: 03/12/2002 17:24:06
>>> The few docs I have found on this (501-1910) card [...]
>> The 501-1910 actually has two things on it: [...bpp and lpvi...]
> OK.  Any clues as to the etymology of "Bi-Pro" (just out of
> curiosity/ignorance)?

Well, I'd guess that the "Bi" is the same as the "b" in bpp:
bidirectional.  "Pro" feels to me like a pure marketing adjective.
That's 100% guesswork, though.

>> Yes, the SPARCprinter itself is little but the print engine.  The
>> host nterface is little more than a DMA engine and SBus interface.
> OK.  Looks pretty much like a Versatec flavor interface... i.e. just
> pump raw "dots" (video) down the wire, clocking each line in as a
> "line sync", etc.

Perhaps.  I don't know whether bits flow over the cable at print-engine
rates or whether there's enough intelligence and buffering to move the
whole bitmap to the printer before starting the print.  I could see
arguments for either design.  You might be able to tell by unplugging
the cable partway through a print and seeing what failure mode you get.

> Presumably, your driver builds a bitmap image of the (desired)
> printed page in memory and then just ships the individual "dots" out
> the interface...?

The driver gets a bitmap from anywhere - it could invent it on its own,
or it could do what my driver does and get it from userland via the
write() interface, or whatever - and then sets a DMA address register
to point to the beginning of it and sets other registers to indicate
parameters like width in bytes and margins in pixels.  Then it pokes a
few other registers and the hardware does the rest, DMAing the bitmap
out of main memory and ultimately getting it onto the paper.

Based on the timing of some interrupts I've seen, I think the DMA
occurs much faster than print-engine speeds; it seems to finish long
before the paper has fed a significant distance into the paper path, so
there's almost certainly a page-sized buffer somewhere.

>> I don't know, actually, how the rest is split between host card and
>> printer, and I don't really see that it makes much difference unless
>> you propose to connect a SPARCprinter to something other than an
>> lpvi, or vice versa....
> My question is whether there is anything "uniquely desireable" about
> having a SPARCprinter -- vs. any of the other existing technologies
> or implementations out there.

Let's see.

- It is easy for the host to have precise bit-level control over the
  printed image.  (Printers that stick you with a PostScript-only
  interface, for example, make this difficult at best, and even when
  you manage it, the result usually takes a comparatively long time to
  print because of all the processing going on.)

- They can handle many different paper sizes.  Well, seven sizes, I
  think.  The paper tray on mine has markings for 8.5"×11", 8.5"×13",
  8.5"×14", A4, and B5.  I have seen indications that the printer can
  also handle A5 and B4.  The seven printable-area sizes, converted
  from pixels to inches at 400dpi (the 300dpi figures are within .02"
  of these), together with the names attached to them where I found
  them:
	b4 sef		9.82 × 14.02
	a4 sef		7.96 × 11.38
	letter sef	8.20 × 10.70
	a5 lef		7.96 ×  5.52
	b5 sef		6.86 ×  9.82
	legal 14	8.20 × 13.70
	legal 13	8.20 × 12.70
  The interface has 16-bit fields for the print size in pixels, which
  in theory allows you to specify a print as large as 65535/300=218.45
  inches square, or 18-plus feet.  I don't know what happens if you
  have software tell the printer the page is larger than appropriate
  for the paper-size figure the printer claims, though.  My rough guess
  is that the paper path can't handle anything over about 10" wide.

- You may be able to get the pieces (printers, cards, maybe even
  cables) cheap because they're useless on non-SBus machines like the
  omnipresent peecees.

>>> Anything else I should consider [...]
>> My impression is that coming by the printer and card are
>> comparatively easy; the hard part is the cable between the two.
> Thanks, but I think I saw this cable "lying around" (didn't know what
> it was for so didn't pick it up).  Of course, it probably *won't* be
> there on  my next visit!  :-/

Be careful.  The cable you want connects to the smaller of the two
connectors on your 501-1910; the printer end of it is a DB25M.  There
is another cable that connects to the larger connector on the 501-1910
and is Centronics on the other end; that's for the bpp, and while it
may be nice to have it will be of no use with your SPARCprinter.

> But, am I still better off sticking with a "normal" printer (?)

Only you can say. :-)

/~\ The ASCII				der Mouse
\ / Ribbon Campaign
 X  Against HTML	       mouse@rodents.montreal.qc.ca
/ \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B