[comp.os.cpm] Fix to a bug in Lifeboat CP/M 2.2 printer driver

dzzr@beta.UUCP (Douglas J Roberts) (05/27/87)

Since I've been pestering this group recently for help, I thought
that I'd share the solution now that I've found it.

The parallel port driver was sending garbage to my printer, so
after I located the problem I modified the Horizon user area and patched
it in. For those of you interested, here is the offending code and the
fix.


COUT2:
	;Parallel port output.
	IN	6		;Motherboard status
	ANI	1
	JZ	COUT2	
	MVI	A,20H		;Reset PO flag
	OUT	6		;Output char
	MOV	A,C  		;Load accumulator
TIN1:
	ORI	80H		;Set strove false <-- REMOVE THIS LINE!!!
	OUT	0		;and send character
	XRI	80H		;Toggle strobe
	OUT	0		;Output
	XRI	80H		;and toggle again
	OUT	0
	ANI	7FH		;Mask to ASCII
	RET

The indicated line was setting the high bit on each character,
effectively putting my Epson MX-80 into graphics mode.

Thanks again for all the help!

--Doug