[comp.unix.questions] NEC LC-890 in hp emulator mode

GL4@PSUVM.BITNET (08/11/88)

i have an NEC LC-890 hooked up to a unix machine (Celerity) running
BSD 4.2 ... the NEC has a mode to emulate an HP laserjet+, but i can't
get it to work ... if you feed it a file that looks like:

       whaa
       whaa
       whaa

it will print out:

      whaa
          whaa
              whaa

and eventually just run off the end of the paper for files with longer lines.

it seems like it's just not getting the carriage return (obviously). i've
called both Celerity and NEC, and they basically said, "duh".

help??? anyone???

                 thanks,

                        Garth Longdon
                        Penn State Statistics Dept.

leo@philmds.UUCP (Leo de Wit) (08/12/88)

In article <49764GL4@PSUVM> GL4@PSUVM.BITNET writes:
|i have an NEC LC-890 hooked up to a unix machine (Celerity) running
|BSD 4.2 ... the NEC has a mode to emulate an HP laserjet+, but i can't
|get it to work ... if you feed it a file that looks like:
|
|       whaa
|       whaa
|       whaa
|
|it will print out:
|
|      whaa
|          whaa
|              whaa
|
|and eventually just run off the end of the paper for files with longer lines.
|
|it seems like it's just not getting the carriage return (obviously). i've
|called both Celerity and NEC, and they basically said, "duh".

Maybe your "whaa" just scared him off the paper 8-) ?
No, seriously, have you tried setting a dipswitch, something like 'CR after
LF' or 'CR after buffer print'? My printer had one.
Not getting the carriage return? Unix text files use linefeed as the line
terminator, not CR/LF or LF/CR. So there IS no carriage return. You have
to generate it (hardware, software, by the printer, by the driver, by your
program, whatever is the most appropriate).
An alternative could be to do it in software, using a filter (not recommended).
But look for that dipswitch first.

               Leo.

les@chinet.chi.il.us (Leslie Mikesell) (08/13/88)

In article <49764GL4@PSUVM> GL4@PSUVM.BITNET writes:
>i have an NEC LC-890 hooked up to a unix machine (Celerity) running
>BSD 4.2 ... the NEC has a mode to emulate an HP laserjet+, but i can't
>get it to work ...

The print spooler has to send carriage returns (as it would to most
other printers) unless the application knows the laserjet positioning
codes.  Under sysV, that would be "stty onlcr", but I don't know
about BSD.  There have been several ascii->postscript filters posted
to the net that work nicely with the 890.  In postscript mode the
carriage returns are not needed.

Les Mikesell

blu@hall.cray.com (Brian Utterback) (08/14/88)

In article <589@philmds.UUCP> leo@philmds.UUCP (Leo de Wit) writes:
:In article <49764GL4@PSUVM> GL4@PSUVM.BITNET writes:
:|i have an NEC LC-890 hooked up to a unix machine (Celerity) running
:|BSD 4.2 ... the NEC has a mode to emulate an HP laserjet+, but i can't
:|get it to work ... if you feed it a file that looks like:
:|
:|       whaa
:|       whaa
:|       whaa
:|
:|it will print out:
:|
:|      whaa
:|          whaa
:|              whaa
:|
:
:No, seriously, have you tried setting a dipswitch, something like 'CR after
:LF' or 'CR after buffer print'? My printer had one.
:Not getting the carriage return? Unix text files use linefeed as the line
:terminator, not CR/LF or LF/CR. So there IS no carriage return. You have
:to generate it (hardware, software, by the printer, by the driver, by your
:program, whatever is the most appropriate).
:An alternative could be to do it in software, using a filter (not recommended).
:But look for that dipswitch first.


Well, not exactly a dipswitch, but you have put your finger on the problem.
The HP LaserJet II has three settings for line termination.
The first (mode 0) is the default.  This treats CR, LF and FF as there literal
interpretation.  If it gets a LF, then it line feeds, if it gets a CR it
carriage returns and if it gets FF it ejects the page.

The second mode (mode 1) does the following mapping: CR->CRLF LF->LF FF->FF.  
This allows the system to print correctly, and allows programs that use
LF to work.

Mode 2 maps like this: CR->CR, LF->CRLF FF->CRFF

And finally, mode 3 is like this: CR->CRLF, LF->CRLF, FF->CRFF.  I use this
mode.

The command to set the modes is: 
<esc>&knG where n is the mode number (i.e. <esc>&k1G)
<esc> is a single escape character.


-- 
Brian Utterback     |UUCP:{ihnp4!cray,sun!tundra}!hall!blu |  "Aunt Pheobe, 
Cray Research Inc.  |ARPA:blu%hall.cray.com@uc.msc.umn.edu |  we looked like
One Tara Blvd. #301 |                                      |    Smurfs!"
Nashua NH. 03062    |Tele:(603) 888-3083                   |

mark@drd.UUCP (Mark Lawrence) (08/22/88)

In article <49764GL4@PSUVM> GL4@PSUVM.BITNET writes:
>
>it seems like it's just not getting the carriage return (obviously).
>                        Garth Longdon
>                        Penn State Statistics Dept.

Obviously.  Write a filter to be called by lpr (use psif in printcap to
call it) that inserts CRs before||after NL.

	Mark

-- 
 DRD Corporation                     | [uunet!apctrc,romed,tulsun]!drd!mark
 6111 East Skelly Drive Suite 415    |     apctrc!drd!mark@uunet.UU.NET
 Tulsa, OK 74135       (918)664-9010 |      mlawrence@jarsun1.ZONE1.COM