[comp.sys.tandy] older tandy printers

uhclem@trsvax.UUCP (07/28/87)

<Software can fix any problem introduced by hardware.
				- Old Director of Hardware Proverb>

>/* Written  2:04 am  Jul 23, 1987 by kksys.UUCP!gk*/
>A friend has been attempting to use a Tandy DMP120 printer which he scavenged
>off his old TRS-80 on an IBM-AT clone which is running UNIX --> It is not
>happy.  The printer runs ok on the TRS-80, and runs on -some- IBM clones
>with MS-DOS (depends on dos release).  The local Radio Shack service center
>says the old printers are not compatable with the IBM-type machines
>(including Tandy systems), and suggests the purchase of a new printer.
>More woes....

One of the silliest printers ever made.  The guys in Japan must have laughed
for weeks over this one.

The basic problem of the 120 is that it insists that everything be perfect.
In particular, if the print strobe exceeds some amount that is slightly
over the Centronics 1.5usec strobe spec, the printer decides that something is
wrong and halts the built-in CPU.  You have to cycle printer power to get it
out of this.  Because strobe is active-low logic, if you turn the printer on
BEFORE you turn the computer on (at least on Model II, 16, 6000, III, 4
and 4P units I tried), the printer "sees" a strobe signal exceeding the
defined length and commits hari-kari.  So much for the "turn your peripherals
on first" statement.  You either had to cycle power on the printer once
the computer was on, turn them both on at once (50-50) or turn the printer
on last.

One of the numerous problems with IBM-PC-family computers, apart from the
fact that they don't show up in mirrors, is that the print strobe, that
1.5usec pulse, is generated by software.   A 1-shot to handle this would
have cost .22, but Nooooo!!!!   And IBM, for some god-unknown reason,
put the circuitry on there to allow software to read the last character
sent to the printer!  Right!  I write software all the time that forgets
what it just told the printer to do!  Someone find out what a 74LS244 is
worth!  More that .22 I'll bet!  

Of course, there is no problem if you write software for a particular
machine running at a certain speed, but to date there are AT and AT-clones
out there that run at 6+1w, 6+0w, 6.77+0w, 8+1w, 8+0w, 10+0w, 12+2w, 12+1w,
12+0w, 16+3w, 16+2w, 16+1w, 16+0w, plus another dozen I haven't heard of or
"know nothing" about.  Now, did Microport (or whoever) write the code to
handle that timing regardless of what speed machine you happened to boot
on?  If not, then you will have the problems you are having.  Other problems
from mis-sized print strobes on some printers include double-characters,
or the printer ignoring the strobe entirely and just sitting there.

The cure is to change the values for the strobe generation.  Call the vendor
in question and ask them for a patch address.  Then try tuning it
yourself if they don't have a ready fix for you.  
Another way out might be to use one of these printer buffers that are
available.  Some of these things pay no attention to the duration of
the print strobe (within reason) on incoming data and generate reasonable
strobes for the printer.  That might hide the faulty signals from your
printer so it will work.  I think I tried using the Tandy buffer with a
Terminet once and it didn't handle it.  Ended up with double-characters.
Feeding the buffer from a machine with a hardware-generated strobe worked
fine.

<This information is provided by an individual and is not nor should be
 construed  as  being  provided  by  Radio  Shack or Tandy Corp.  Radio
 Shack/Tandy Corp has no obligation to support the information provided
 in  any   way.   But I'm  not a  potted plant!  That's why I am not in
 Washington!>

						
						"Thank you, Uh Clem."
						Frank Durda IV
						@ <trsvax!uhclem>
				...decvax!microsoft!trsvax!uhclem
				...convex!infoswx!hal6000!trsvax!uhclem

"If everybody's somebody, then things are getting boring."