[net.micro.amiga] Patch for Epson ?X-80 printers

mwm%ucbopal@BERKELEY.EDU@caip.RUTGERS.EDU (02/02/86)

From: Mike (I'll be mellow when I'm dead) Meyer <mwm%ucbopal@BERKELEY.EDU>

Someone from Amiga noted the bug in the graphics driver for the Epson
printer, and pointed out a one-line fix to a program that most of us
probably don't have access to.

To help us out, could someone who's installed and tested this fix post
the entire source, along with instructions for installing it? Failing that,
how about a file name, a list of offsets, old values and new values to
install the patch in the binary? I'll even provide software to compare two
binaries, and apply the resulting patch list to old binaries.

	Thanx,
	<mike
	mwm@ucbvax

wagner@utcs.uucp (Michael Wagner) (02/03/86)

Actually, there seem to be several bugs in the Epson drivers.  One, mentioned
here earlier and responded to by an AMIGA source, had to do with how much
to increment the carriage in bit graphics mode.  The second, which I've
not seen mentioned here, has to do with a garbage character sent to the
printer when it is first opened.  On my printer, what prints is a K.
I don't think it's my problem (although I could be wrong), since a program
I have (Textcraft I think, but don't quote me) lists inproper treatment of
Epson printers (and specifically garbage characters at open time) in a 
bug list, but refers to it as an OS bug rather than an application bug.
The third (I suppose this could be a "feature") is that there doesn't
seem to be any difference between draft and letter quality mode.  I 
expected it would redraw the characters slighly offset, or something.
It doesn't appear to.

For reference, I don't have an Epson printer, but rather an IBM-PC graphics
printer, which I am under the (mis-?)impression is code compatable.  It is
connected via a Microfazer Serial-to-Parallel buffer, which is in turn
connected to the serial port.  I kind of doubt the Microfazer is responsible,
but the serial/parallel difference could be.

Incidentally, does anyone know why the translation to printer-specific
codes is done by code rather than tables+some interpretive code?  I can't
imagine that there would be a performance issue.  Also, why doesn't any
available software spawn printer tasks and let me get back to my work?
At least nothing I've seen.  Thank god for a 64K printer buffer, but why
did I buy a multi-tasking machine if no one is going to use the 
multi-tasking?

andy@amiga.UUCP (Andy Finkel) (02/04/86)

In article <1079@utcs.uucp> wagner@utcs.UUCP (Michael Wagner) writes:
>
>Actually, there seem to be several bugs in the Epson drivers.
>not seen mentioned here, has to do with a garbage character sent to the
>printer when it is first opened.  On my printer, what prints is a K.

>For reference, I don't have an Epson printer, but rather an IBM-PC graphics
>printer, which I am under the (mis-?)impression is code compatable.

I don't believe that the IBM printer you have is completely Epson
compatible...you'll have much better luck if you select the CBM-MPS1000
printer driver.  That K is part of the initialization sequence that
your printer is ignoring.  Also, your printer may not support NLQ...
does it do it normally ?

>
>Incidentally, does anyone know why the translation to printer-specific
>codes is done by code rather than tables+some interpretive code?  I can't
>imagine that there would be a performance issue. 

The text processing portion of the printer specific driver was
done as tables + some interpretive code.
(the graphics portion was done as code;  the printers were dissimilar
enough to make that the most reasonable alternative).

>Also, why doesn't any
>available software spawn printer tasks and let me get back to my work?
>At least nothing I've seen.

I don't know...it is more difficult than to just print a file...
maybe that's why.  A print spooler shouldn't be that difficult for
some enterprising person to write :-)

			andy finkel
			Commodore (Amiga)
"disclaimer:
	I disclaim all responsibilities; all sizes, all shapes, all colors."

disclaimer:  my opinions often don't reflect those of my employer.
	    I work for Commodore, and may be biased.

bruceb@amiga.UUCP (Bruce Barrett) (02/04/86)

In article <1079@utcs.uucp> wagner@utcs.UUCP (Michael Wagner) writes:
 (regarding epson printer bugs)
>The third (I suppose this could be a "feature") is that there doesn't
>seem to be any difference between draft and letter quality mode.  I 
>expected ...
The way the ASCII printer drivers were written they take advantage of the
functions supported by the printer, they (almost??) never add features.
So... If your printer has draft and letter quality modes then your output
will too.
>
>Incidentally, does anyone know why the translation to printer-specific
>codes is done by code rather than tables+some interpretive code?  
Most of the printer driver is done using table lookup.  The code part
was (I beleive) necessary for some of the more complex sequences,...
Especially graphics rendering.

>Also, why doesn't any
>available software spawn printer tasks and let me get back to my work?
A very good question!  On a few of the products I am familiar with the
specs say they must run in a 256k machine.  An extra task for printing,
the memory the print driver takes and making sure you don't modify the
object you are printing all would add to the memory requirements.  I think
either:
	a) a product should detect that it has lots of room and multi-task
		itself
or	b) the 256k limiting spec should be dropped (in some cases).
Please note in many cases (not Textcraft) you can run 2 copies of a program,
print with one, work with the other (far from elegant but nicer than some
machines).

Disclaimer:
	If my opinions were those of Commodore things might be different,
but then again might not.