STOP_LF.TXT					9/30/93
--------------------------------------------------------------------
Stop Line-Feeds, Version 1.01, Copyright (c) 1993 SoftCircuits
Redistributed by Permission.
====================================================================

This program intercepts line-feeds that are sent to the printer. Why
ever would you want to do such a thing? Read on.

Under MS-DOS (which, for the sake of this discussion is the same as
PC-DOS), a new line consists of 2 characters. A carriage-return,
which returns the cursor (or the print head) to the left-most
column, and a line-feed which moves the cursor down one line.

This program was written because of a printer (which had something
to do with the Tandy Color Computer--I'm not sure exactly) that
performed both a carriage-return and a line-feed whenever it
received a carriage-return. This meant that under MS-DOS, regular
text was printed double-spaced. This is because 2 line-feeds were
being performs (1 with the carriage-return, and 1 when the actual
line-feed character was received).

This program makes regular text print normally on such printers
because it intercepts line-feeds and doesn't let the printer see
them. It doesn't solve every problem however. Some programs may rely
on carriage-returns to keep the print head on the same line so, for
example, it can double-strike the same text on a dot-matrix printer.
This, of course, won't work since the carriage-return will send the
print head to the next line. Unfortunately, this can't be changed
with software.

To load the program into memory and make it active, just enter the
program name without arguments:

	STOP_LF  <Enter>

To unload the program from memory (and let the line-feeds go
through), enter:

	STOP_LF /u  <Enter>

This is fool-proof by the way. The program knows if it's already
loaded or not. If you forget what to type to unload it, no worries.
If you give an invalid argument, the program displays the correct
syntax (you can, for example, type "STOP_LF /?" to see the correct
syntax).

--------------------------------------------------------------------

This program was released by:

SoftCircuits Programming
P.O. Box 16262
Irvine, CA 92713-9998

It may be used and distributed freely as long as no fee is charged
(except for reasonable shipping, handling and media charges), and
that the program is not modified in any way.

If you find this program to be useful, please send us 60 million
dollars. (Your questions and comments, however, will be answered
for free and you can send them to the address given above.)

--------------------------------------------------------------------

Technical Stuff:

This program works by installing an interrupt service routine for
interrupt 17h (the ROM BIOS printer interrupt. The resident portion
is very small. All it needs to do is see if a write-character
service was requested and the character to be written is a line-feed
(0Ah). If so, the handler returns. Otherwise, the original interrupt
is called and normal processing occurs.

This program requires DOS version 3.0 or higher. This requirement
exists mainly because the program uses the DOS multiplexer interrupt
(interrupt 2Fh) (the preferred method) and support for multiplexing
is poor under DOS 2.x and older versions.

