Epson LX-90 Parts User Manual

All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, mechanical, photocopying, recording or other- wise, without the prior written permission of Epson America, Inc. No patent liability is as-
sumed with respect to the use of the information contained herein. While every precaution has been taken in the preparation of this book, Epson America, Inc. assumes no responsibility for
errors or omissions. Neither is any liability assumed for damages resulting from the use of the information contained herein.
Printout on page 45 courtesy of PalSoftware Corporation, Los Angeles, CA, drawn using ArtPak Presentation System. Artpak is a trademark of PalSoftware Corporation. HomeWriter, LX-90, and PIC are trademarks of Epson America, Inc. IBM is a registered trademark and PCjr is a trademark of International Business Machines Corporation. WordStar is a registered trademark of MicroPro International Corporation.
Copyright © 1985 by Epson America, Inc. Torrance, California 90505
P8592021
ii
Contents
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Installation and Operation
1.
......................
Inserting the Printer Interface Cartridge Printing the Test Patterns Connecting the Printer to Your PCjr Control Panel Using Your Printer
SelecType
2.
.................................
.............................
....................................
SelecType Operation Turning SelecType On
Selecting typestyles SelecType exercise Mode combination
SelecType Tips
Elements of Dot Matrix Printing
3. and Computer/Printer Communications
The Print Head
Changing Pitches
NLQ Mode
................................
...............................
..............................
...................................
ESCape and ASCII
.......................
..............
...........................
..........................
..........................
...........................
..........................
............................
...........
...........
1
3
3
3
4
4
6
7 7
7 8 9
11
12
13 13 14 15 16
LX-90 Features
4.
................................
Demonstration Programs How to Run BASIC Programs Pica Printing Changing Pitches Cancelling Codes
..................................
..............................
..............................
Resetting the Printer Pitch Comparison Near Letter Quality Mode
.......................
...................
...........................
.............................
......................
17 17 18 19 19 20 20 21 21
. . .
III
5.
Print Enhancements and Special Characters
Bold Modes Emphasized Mode Double-Strike
Expanded Mode.. .............................
Mode Combinations Underline Mode Master Select Superscript and Subscript
.............................
..................................
.............................
.................................
...........................
...............................
.................................
.......................
23 23 23 24 25 25 26 27 28
6. Page Formatting
Margins.. ....................................
Skip Over Perforation
Line Spacing.. ................................
Paper Out Sensor Justification with NLQ
7.
User-Defined Characters
Defining Your Own Characters Designing Process
Definition program 1 Running the program Definition program 2 Running the program
Defining NLQ Characters
NLQ grid NLQ definition program NLQ definition program
8. Introduction to Dot Graphics
Dot Patterns The Print Head and Graphics Graphics Mode Pin Labels First Graphics Program WIDTH Statements Multiple-Line Exercise Density Varieties Reassigning Code Column Reservation Numbers Designing Your Own Graphics
String variables
...............................
..........................
.............................
.........................
.......................
..................
.............................
.........................
........................
.........................
........................
.......................
..................................
1
....................
2
....................
....................
..................................
....................
...............................
....................................
.........................
............................
..........................
..............................
..............................
...................
...................
.............................
29 29 30 30 31 31
33 33 34 36 37 38 39 39 40 42 43
45 46 46 47 48 49 50 50 52 53 53 54 57
iv
Appendixes
LX-90 Characters ..............................
A.
Standard Character Mode (Draft) Standard Character Mode (NLQ) Alternate Character Mode (Draft) Alternate Character Mode (NLQ)
Control Codes in Numeric Order
B.
Control Key Chart
Control Codes by Function
C.
.............................
Near Letter Quality Mode Character Width (Pitch) Character Weight Print Enhancement
..............................
............................
Mode and Character-Set Selection
Special Printer Features
Line Spacing
Forms Control Page Format
..................................
................................
..................................
User-Defined Characters
Dot Graphics
D.
The DIP Switches
.................................
.............................
......................
......................
........................
.........................
........................
................
................
................
................
..................
................
A-l A-2 A-4 A-6 A-8
B-l B-9
C-l C-l C-l C-l c-2 c-2 c-2 c-2 c-3 c-3 c-3 c-3
D-l
Troubleshooting and Advanced Features
E.
Installation of Commercial Software Programs
SelecType Features and Solutions Troubleshooting Beeper Error Warnings Graphics
.....................................
Data Dump Mode IBM PC BASIC Solutions
...............................
.........................
.............................
.......................
................
Index.. ......................................
...........
.....
E-l E-l E-2 E-3 E-3 E-4 E-4 E-6
F-l
V

Introduction

The Epson LX-90 printer combines low price with the high quality and advanced capabilities formerly available only on more expensive printers.
The LX-90 User’s Manual tells you how to set up your printer. This Printer Interface Cartridge Operation Manual gives you the specific information you need to use the LX-90 with your PCjr computer.
This manual won’t waste your time with unnecessary information, but it also won’t neglect anything you need to know about the LX-90
and its features.
You can read as much or as little of this manual as you wish. The
first chapter tells how to test the printer and connect it to your com­puter. The second chapter explains SelecType, a feature that offers you five special typefaces. The other chapters explain the main fea­tures of the LX-90, and the appendixes give technical information on the printer.
Note
Although all references in this manual are to the Epson LX-90 printer, this PIC can also be used with the Epson HomeWriter™-10.
The samples of typestyles and graphics on the next page are a pre-
view of what your LX-90 can do.
1
Expanded emphasized
Typewriter-style Near Letter Quality
Emphasized bold printing
Double-strike bold printing
Compressed narrow
Elite printing
printing
Chapter 1
Installation and Operation
After you have set up your printer and loaded the paper (following the directions in the LX-90 User’s Manual), you are ready to plug in your Printer Interface Cartridge (PIP™) and begin printing.

Inserting the Printer Interface Cartridge

Inserting the PIC is easy. The cartridge slides into the rectangular opening, as shown in the LX-90 manual. Be sure the printer is OFF when you insert the PIC. Once the PIC is installed, you are ready to test your printer.

Printing the Test Patterns

It’s time to see the LX-90 in action. You’ll start with a test pattern. Don’t connect the printer to your computer yet-just follow these
steps:
1. Make sure that your printer has paper in it and that the power switch (on the right side of the printer) is off.
2. Press the LF button on the control panel, and at the same time, turn the printer on with the power switch.
The LX-90 begins printing letters, numbers, and symbols in the draft mode. It won’t stop until you turn it off or until it gets near the end of the paper.
To see the same test in the NLQ (Near Letter Quality) mode, turn the printer on while pressing the FF button. Figure l-1 shows what both test patterns look like.
Draft
/0123456789::<=>? 0123456789:;<=>?
123456789:;<=>?
23456789:;<=>? .3456789:;<=>?
456789:;<=>?
NLQ
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]'
@ABCDEFGHIJKLMNOPQRSTUVWXY
@ABCDEFGHIJKLMNOPQRSTUVWXYZ
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\
@ABCDEFGHIJKLMNOPQRSTUUVWXYZ[\]
3456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\] 456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]ˆ 56789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]ˆ­6789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]ˆ-' 789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\I^-'a 89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\l
Figure I-l. Test patterns

Connecting the Printer to Your PCjr

Before connecting the LX-90, be sure that all your computer equip-
ment is turned off.
Plug the PIC cable into the socket marked S in the back of your
PCjr. Now the printer can communicate with your computer.
A
-'ab

Control Panel

After connecting your LX-90 to your computer system, turn on the
printer and look at the control panel on the top.
Figure 1-2. Control panel
You have already used the control panel for a special purpose, printing the test patterns. Here are the main functions of the lights and buttons on this panel:
l
The POWER light glows green when the power is on.
l
The READY light glows green when the printer is ready to accept
data. Don’t worry if this light flickers somewhat during printing;
this flickering is normal.
l
The PAPER OUT light glows red when the printer is out of paper or
the paper is loaded incorrectly.
l
The ON LINE light glows green when the printer can receive data.
In addition to the lights, the control panel has three buttons.
l
ON LINE-switches the printer between on-line and off-line status.
When the printer is on-line, the ON LINE light glows and the printer is ready to accept data.
The other two buttons, FF and LF, work only when the printer is off-line (when the ON LINE light is off). If the ON LINE light is on, press the ON LINE button before you use these.
5
l FF (Form Feed)-advances continuous paper to the top of the
next page or ejects a single sheet of paper.
l
LF (Line
Feed)-advances the paper one line at a time.
The control panel can also be used to turn on several printing func-
tions using SelecType, a feature which is described in the next chapter.

Using Your Printer

If you have a word processing or other commercial software pro­gram, just load the program into your computer, follow the printing instructions, and watch your LX-90 print.
If your software program requires you to specify which printer you
are using, see Appendix E for instructions.
If you plan to use your
LX-90
for printing program listings, load a program and use the appropriate listing command for the program­ming language you are using.
For example, if you are using the BASIC that is built into your PCjr
computer, type NEW and then enter the following simple program:
10 FOR X=1 TO 5 20 PRINT
30
NEXT X
Then make sure your printer is turned on and type the following:
X/3
LLIST
Then press
You can now begin using the LX-90 with your software, or you can find out about the special features of the printer in the next chapters. You may be especially interested in SelecType, the feature described in Chapter 2, which you can use with nearly all software.
ENTER
and your LX-90 will list the program.
6
Chapter 2
SelecType
The LX-90 enables you to use a feature called SelecType to produce
five special typestyles:
Typewriter-style Near Letter Quality,
Emphasized bold printing,
Double-strike bald printing ,
Compressed narrow printing,
or Elite printing.
Choosing typestyles with SelecType is simple. A few taps on the
printer’s control panel tell the printer which style you want, and SelecType lets you choose the typestyle each time you print. For example, you can print the first draft of a letter or report in the stan­dard mode and the final version in the NLQ mode.

SelecType Operation

Using SelecType is simple. You turn on SelecType and select a
typestyle, then turn off SelecType and print.

Turning SelecType On

1. Make sure that the printer is on and that the POWER, READY, and ON LINE lights are all on.
2.
Press both the trated in Figure 2-1.
ON LINE
and
FF
buttons at the same time, as illus-
Figure 2-1. Turning SelecType on
When you press the
ON LINE
and
FF
buttons, the LX-90 signals in
three ways that SelecType is on.
l
The printer beeps.
l
The READY light turns off.
l
The ON LINE light begins flashing.

Selecting typestyles

In SelecType, each button has a function:
l
ON LINE selects typestyles.
. FF sets the styles.
l
LF turns SelecType off.
After turning on SelecType, follow these three steps to select a
typestyle:
1. Find the typestyle you want in Table 2-1.
8
Table
2-1.
SelecType modes
Mode
1
NLQ
2
Emphasized
3
Double-strike
4
Compressed
5 Elite
2. Press the ON LINE button the number of times indicated in the
Typestyle
ABCDEFGHIJKLMnopqrstuvwxyz
ABCEDEFGHIJKLMnopqrstuvwxyz
ABCDEFGHIJKLMnopqrstuvwxyz
ABCDEFGHIJKLMnopqrstuvwxyz
ABCDEFGHIJKLMnopqrstuvwxyz
mode column. Be sure that the printer beeps each time you press the
ON LINE
button.
3. Press the
4. Press the LF button to turn SelecType off. The control panel
FF
button to set the typestyle.
returns to its normal functions, but the printer is off-line.
5. Press the
ON LINE
button, and you are ready to print.

SelecType exercise

You will probably use SelecType mainly with commercial software,
but since there are so many different commercial software programs,
the sample exercises are in BASIC because it is built into the PCjr.
You don’t need to know anything about programming for this exer­cise because it is merely for practice. If you would rather not use BASIC, use your word processing or business program to create a short file or document of the type you will usually print.
If you do want to use BASIC for this exercise, simply turn on your
computer and printer. Then type the short program listed below.
Only the words inside the quotation marks are printed. You can put anything you want there.
l0 LPRINT "This is an example of" 20 LPRINT "LX-90 printing."
9
Now, run the program by typing RUN and pressing
ENTER,
or
print your file or document by following the printing instructions of
your software. The LX-90 will print your example in standard single­strike printing, as shown below:
This is an example of
LX-90 printing.
Now that you have created a sample, follow these steps to print it in
emphasized mode:
1. See that both the ON LINE and READY lights are on.
2.
Press the
ON LINE
and
FF
buttons at the same time. You hear a
beep to signal that SelecType is on.
3. As shown in Table 2-1, the code for emphasized is two. Therefore, press the you hear a beep each time you press the
ON LINE
button two times. (Remember to make sure
ON LINE
button when
you are in SelecType mode.)
4. Now that you have selected the emphasized mode, push the
FF
button once to set it.
5. Push the
LF
button once to return the panel to its standard opera-
tion .
6. Press the
ON LINE
button so the LX-90 is ready to print.
Now you have set the LX-90 to print in emphasized mode. Print your sample once more. It should appear in emphasized mode just as you see below:
This is an example of LX-90 printing.
Turn off your printer to cancel the emphasized setting, and-if you wish-try this exercise with other modes. If you are using commercial software and SelecType will not change the typestyle, see “SelecType Features” in Appendix E.
10

Mode combination

Two of the SelecType modes (NLQ and emphasized) can be com­bined to create an impressive effect. If you want to see this combina­tion, turn your printer off and back on and follow the instructions below :
1. See that the ON LINE and READY lights are on.
2. Press the ON LINE and FF buttons at the same time.
3. Press the ON LINE button once and then the FF button once.
Since one is the code for NLQ, you have now set the
4.
Press the ON LINE button one more time and then the FF button
once again.
This makes a total of two times, and thus sets the sized also.
5. Press the LF button to return the panel to its standard operation.
6.
Press the ON LINE button to put the LX-90 on-line.
Now print your sample document or run your sample program. If
your printing appears in
LX-90
LX-90
for NLQ.
for empha-
emphasized Near Letter Quality
as you see here, you have successfully combined the two modes. If you get any other results, turn your printer off and back on and then try the steps again.
You can combine other modes using the same technique, but some
modes will not mix with others. Table 2-2 shows which modes can be combined. A dot in a box indicates that the two modes can be com­bined.
11
Table 2-2. Mode combinations
Mode
NLQ Emphasized
Double-strike
Compressed
Elite
NLQ
Emphasized
Double-
strike
Compressed Elite
Don’t worry about harming your printer if you try to combine two
modes that the LX-90 can’t mix. Your settings cannot damage the
printer because it is prepared for the possibility of receiving codes for
conflicting modes. If it receives codes for two modes that it can’t com-
bine, it uses only one of the codes.

SelecType Tips

After you turn on a mode with SelecType, it usually stays in effect until the printer is turned off. If, for example, you use SelecType to print a document in emphasized, anything you print after that will be emphasized unless you first turn the printer off and back on.
If you like NLQ or compressed well enough to use it most of the
time, you can turn it on and keep it on with a special switch in the
back of your printer. See Appendix D for instructions.
For more information on the SelecType typestyles, see Chapters 3,
4, and 5.
12
Chapter 3
Elements of Dot Matrix Printing
and Computer/Printer Communications
This chapter is for those of you who want to know something about
how your printer works. It’s a simple, non-technical explanation of
the basics of dot matrix printing that will help you understand some of the later chapters, particularly the ones on user-defined characters and graphics.

The Print Head

The LX-90 uses a print head with nine pins or wires mounted verti­cally. Each time a pin is fired, it strikes the inked ribbon and presses it against the paper to produce a dot. This dot is about 1/72nd of an inch in diameter. The size varies slightly depending upon the age of the ribbon and the type of paper used. As the head moves horizontally across the page, these pins are fired time after time in different patterns to produce letters, numbers, symbols, or graphics.
For example, to print a pica capital T, the head fires the top pin, moves 1/60th of an inch, fires the top pin again, moves 1/60th of an inch, fires the top pin and the six below it at the same time, moves 1/60th of an inch, fires the top pin, moves another 1/6Oth of an inch, and fires the top pin once more to finish the letter. All this happens in only l/lOOth of a second.
Figure 3-7. A capital T
13

Changing Pitches

In addition to pica, in which there are LX-90 can also print in other widths, or pitches. It does so by reducing the distance between pin firings. In the elite mode it prints 12 charac­ters per inch and in the compressed mode it prints slightly more than
17
characters per inch. The pattern of the dots is not changed, but the
horizontal space between them is reduced.
10
characters per inch, the
Figure 3-2 shows enlargements of four sample letters in three pitches. These letters are chosen to show how the LX-90 prints letters that are uppercase and lowercase, wide and and without descenders (the bottom dots of the j and y).
each of
narrow,
the
and with
This is pica.
This is elite.
This is compressed.
Figure 3-2. The three pitches
The dot pattern of each character is carefully designed so that in
pica no dot overlaps another. The reason is that in printing the pins cannot fire and retract and fire again quickly enough to print one dot overlapping another.
of
the LX-90
normal
high-speed
14

NLQ Mode

The preceding examples are in the LX-90’s draft mode, but the LX-90 also has the high-quality NLQ (Near Letter Quality) mode that you have seen in previous chapters.
The NLQ letters are more fully-formed than the draft letters because they are made up of many more dots as you can see below.
Figure 3-3 shows enlargements of two letters in draft mode compared
with the same two in the NLQ mode.
Figure 3-3. Near Letter Quality and draft characters compared
With the two modes, draft and NLQ, the LX-90 lets you choose high speed or high quality each time you print. You can print your ordinary work or preliminary drafts quickly in the draft mode and use the NLQ mode for final copies or special purposes.
SelecType makes it especially easy to change from draft to NLQ, but you can also select and cancel the NLQ mode with a software command or with a special switch in the back of your printer. You can find the software command in Chapter 4 and the operation of the switch (called a DIP switch) in Appendix D.
15

ESCape and ASCII

The details of printer-computer communication are complex, but for most purposes all you need to know is that the computer sends a series of codes (each consisting of one or more numbers) to the printer, and the printer interprets them.
Some codes tell the printer to print a character, and other codes tell it to turn on or off certain printer functions, such as emphasized or Near Letter Quality. Because the codes between 0 and cally standardized by the American Standard Code for Information Interchange (ASCII) they are referred to as ASCII numbers in this manual.
Nearly all of the codes for printer functions require more than one number and begin with a special code, called the escape code. This code signals that the next number is a code for a printer function and its name is usually printed with the first three letters capitalized (Escape) or it is abbreviated ESC or (ESC) .
In the demonstration programs in this manual, you’ll see how ASCII and ESCape codes are used in the BASIC programming lan-
guage.
l
LPRINT signals that information is to be sent to the printer.
127
are basi-
l
The CHR$ (character string) function is used for numerical codes.
l
CHR$(27)
l
Quotation marks are used for printable characters, such as letters of
is the ESCape code.
the alphabet.
Your word processing or business program may use other methods to send those codes, such as pressing the ESC key for the ESCape code. See your software manual for further information and use Appendixes A and B of this manual to find the proper codes. Appen­dix E also has some suggestions on using LX-90 features with applica­tions software.
16
Chapter 4
LX-90 Features
The next four chapters describe many of the printing features of the LX-90. You can read these chapters if you wish, but you may not need to. Whether or not you use the rest of this manual depends upon your expertise, your interest, and the software you plan to use.

Demonstration Programs

Along with discussion and examples of the LX-90 features, these
chapters include demonstrations in the BASIC programming lan­guage so that you can see these features in action. Although you will
probably not do much of your printing using BASIC, the demonstra­tions are in BASIC because it is built into your PCjr, so the examples are ones that every one of you can try.
You don’t need to know anything about BASIC to type in and run these programs. All the instructions you need are on the next page.
As you run the programs (or even as you read the explanations and
look at the printed examples), you learn how the LX-90 responds to
the messages your computer sends it by printing letters, numbers, symbols, and graphics in various print modes.
Even if you never use BASIC again, you will know the capabilities of your printer, capabilities that can often solve your printing prob-
lems. For example, if you need a special symbol, such as the scientific
symbol for one of the planets, you will know that you can turn to the
chapter on user-defined characters and create such a character.
If you don’t want to do the exercises in BASIC, you don’t have to. In most cases the software that you use for word processing, business, or graphics does the calculating and communicating with the
17
printer for you and all you have to know about the printer is how to turn it on and how to load paper. If you need help with the installation program for your software, see Appendix E.

How to Run BASIC Programs

If you want to know just enough about BASIC to run the dem­onstration programs in this manual, here’s all you need. For
more information, see the manuals for the PCjr.
Even if you don’t have a BASIC cartridge, you can still use the
version of BASIC that’s built into the PCjr’s memory. Simply
turn on your PCjr with no cartridges or disks in it. When the BASIC copyright notice and the message screen, you can begin entering and running programs.
If you do have a BASIC cartridge, plug in the cartridge, insert a disk containing DOS in the disk drive (if you have one), and turn
on the PCjr. Then enter the new date and time as requested by
the onscreen messages (or press displays the prompt A). Type BASICA and press ENTER. When the BASIC copyright notice and the message you can begin entering and running programs. If you want to save programs, replace your DOS disk with a blank formatted disk.
ENTER
Ok
appear on your
twice). The screen then
Ok
appear,
With either type of BASIC, manual exactly as you see them. Be sure to include all spaces and punctuation marks, especially semicolons. Press end of each line. Since the PCjr uses a 40-column display in the standard mode, it breaks some lines into two parts on the screen, but that does not affect the operation of the program. If you make a typing mistake, retype the whole line; the new line will replace the old one.
When you have typed all the lines, press the
F2
key to run the program.
If you have made changes to a program and want to see all of it on the screen, press Fn, F1, and then ENTER to list the pro­gram. When you are completely through with one program and want to start another, type NEW and press
simply type the programs in this
ENTER
Fn
key and then the
ENTER.
at the
18
In Chapter 3 you saw the enlargements of the three LX-90 pitches.
Now you’ll learn how to produce them.

Pica Printing

The first exercise is a simple three-line program to print a sample
line of characters in pica, the standard pitch. Enter this program:
40
FOR X=65 TO 105
50 LPRINT CHR$(X);
60 NEXT X: LPRINT: LPRINT
Now run the program. You should get the results you see below,
pica characters per inch.
ABCDEFGHIJKLMNOPQRSTUVXYZ[\]ˆ-'acdefghi
10

Changing Pitches

Now you can try other pitches. As explained in Chapter 3, the
LX-90 uses the same pattern of dots for pica, elite, and compressed
characters, but it changes the horizontal spaces between the dots to produce the three different widths.
In elite mode there are 12 characters per inch, and in compressed there are “M” command and prints in compressed when it receives the ASCII command. Print a sample line of elite characters by adding the line
below to your previous program. (Simply type this line and press
ENTER;
mode. When you run the program, your printout should look like the
one below.
17.16.
The LX-90 prints in elite when it receives the ESCape
15
you do not need to retype the other lines.)
20 LPRINT CHR$(27)"M";
This line uses the command for elite, ESCape "M“, to turn on that
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]ˆ-'abcdefghi
The next addition to the program cancels elite with ESCape “P” and turns on compressed with ASCII
30
LPRINT CHR$(27)"P"CHR$(15);
15:
19
Now run the program to see the line printed in compressed mode.
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]ˆ-'abcdefghi

Cancelling Codes

As you saw in the third version of the print pitch program, you
must cancel a code when you don’t want it any more. With very few
exceptions, the LX-90 modes stay on until they are cancelled. It is important to remember this because an LX-90 mode can stay on even if you change from BASIC to another type of software. For example, if you run the program above and print a memo with a word process­ing program afterward, the memo is printed in compressed because the printer is still in compressed mode. To cancel compressed, use ASCII 18. In BASIC, you use this format:
LPRINT CHR$(18)
To avoid having one program interfere with the printing modes of
another, you can cancel a mode one of two ways:
l
With a specific cancelling code, such as the ESCape "P" used above
to cancel elite and the ASCII 18 to cancel compressed. Each mode
has a cancelling code, which you can find in the discussion of the
code and in Appendix B. Pica is an exception to this rule. To cancel pica, turn on elite or compressed.
l
By resetting the printer, a method explained in the next section.

Resetting the Printer

Resetting your LX-90 cancels all modes that are turned on. You can
reset the printer with one of two methods:
l
Sending the reset code (Escape “@“)
l
Turning the printer off and back on
Either one of these methods returns the printer to what are called its defaults, which are the standard settings that are in effect every time you turn the printer on. The two effects of resetting the printer that you should be concerned with are: it returns the printing to single­strike pica, thus cancelling any other pitches or enhancements
20
you may have turned on, and the current position of the print head becomes the top of page setting.
Some of the demonstration programs end with a reset code (Escape “@“) so that the commands from one program will not inter­fere with the commands in the next one. After you run a program with a reset code in it, remember to change the top of page setting before you begin printing full pages.

Pitch Comparison

Now that you have used three short programs to produce samples of the three main pitches, you can choose the pitch that you prefer or the one that best fits a particular printing job. Most people use either pica or elite for printing text and compressed for spreadsheets or other applications in which it is important to get the maximum number of characters on a line.
In fact, if you need even more than the 132 characters per line that compressed gives you, you can combine elite and compressed for a mode called compressed elite. It is not really another pitch, because the size of the characters is the same as in the compressed mode; only the space between the characters is reduced. You can see this mode, which allows 160 characters to fit on a line, if you replace line 30 in your last program to produce the following program:
20 LPRINT CHR$(27)"M";
30
LPRINT CHR$(15);
40
FOR
X=65 TO 105
50
LPRINT CHR$(X);
60
NEXT X: LPRINT
With this addition, the program turns on compressed but doesn’t turn off elite, giving you the printout below:
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]ˆ_'abcdefghi

Near Letter Quality Mode

The examples so far in this chapter are in the draft mode, but you
can also use a software command to turn on the NLQ mode, which
you turned on with SelecType in Chapter 2.
21
Enter and run the following program to see how the NLQ mode is
turned on by an ESCape sequence:
NEW
10 LPRINT CHR$(27)"x"CHR$(l);
20 FOR X=65 TO 105
30
LPRINT CHR$(X);
40
NEXT X: LPRINT
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]ˆ-'abcdefghi
Note that you use a lowercase x, not a capital X, in line
10.
Because of the high resolution of the NLQ mode, it prints only in pica, not in elite or compressed.
All the modes demonstrated in this chapter are compared in Table
4-1.
Table 4-1. Summary
Print sample
1 inch On Off
Near Letter Quality
Pica print
Elite print
Compressed print
Compressed elite print
Remember that you don’t have to use BASIC to change modes; you can use any method or software that sends the proper codes to the printer.
of
LX-90 pitches
CPI
10.00
10.00
12.00
17.16
20.00
Codes
ESC "x" 1 ESC "x" 0
ESC "M"
15
ESC "M" 15 ESC "P" 18
ESC "P"
18
22
Chapter 5
Print Enhancements and Special
Characters
Besides the pitches (pica, elite, and compressed) covered in Chap-
ters 3 and 4, the LX-90 offers many other typestyles.

Bold Modes

Two of the typestyles (emphasized and double-strike) are bolder
than standard printing.

Emphasized Mode

In the emphasized mode the LX-90 prints each dot twice, with the second dot slightly to the right of the first. In order to do this, the print head must slow down so that it has time to fire, retract, and fire the pins quickly enough to produce the overlapping dots. This method produces better-looking, more fully-formed characters that are darker than single-strike characters.
To see an example of emphasized, type and run the following pro­gram. (See “How to Run BASIC Programs” in Chapter 4 if necessary.)
NEW
10 LPRINT "This is standard printing."
20 LPRINT CHR$(27)"E";
30
LPRINT "This is emphasized printing."
100 LPRINT CHR$(27)"@"
This is standard printing.
This is emphasized printing
23
Emphasized works only in draft pica and NLQ modes. In elite and compressed the dots are already so close together that even with the reduced print speed, the pins quickly enough to print overlapping dots.
You do sacrifice some print speed with emphasized, because the print head slows down and prints twice as many dots, but the increase in print quality is well worth it. Indeed, you may want to use empha­sized instead of the NLQ mode for some purposes because emphasized printing is faster than NLQ printing. The code to turn off emphasized is ESCape “F”.
LX-90
cannot fire, retract, and again fire the

Double-Strike

The other bold mode is double-strike. For this mode the LX-90 prints each line, then moves the paper up slightly and prints the line again. Each dot is printed twice, with the second one slightly below the first as you “G” to turn on double-strike.
10 LPRINT "This is standard printing." 20 LPRINT CHR$(27)"G";
30
LPRINT "This is double-strike printing."
100 LPRINT CHR$(27)"@"
can
see if you
run
this program, which uses ESCape
This is standard printing.
This is double-strike printing.
Unlike emphasized, double-strike combines with any draft pitch (but not with NLQ) because it does not overlap dots horizontally. Since each line in this mode is printed twice, the speed of your printing is slowed. The code to turn off double-strike is ESCape “H”.
Some users prefer the effect of emphasized, and others prefer double-strike. You can look at the printout below and decide for your­self.
This
this is emphasized printing; and
is standard
printing ;
this is double-strike printing.
24

Expanded Mode

Perhaps the most dramatic mode on the LX-90 is expanded. It pro­duces extra-wide characters that are good for titles and headings. For this mode, the dot pattern of each character is expanded and twice as many dots are printed. You can see the difference between pica and expanded pica if you enter and run this program:
l0 LPRINT "This is standard printing." 20 LPRINT CHR$(27)"W1";
30
LPRINT "This is expanded."
100 LPRINT CHR$(27)"@"
This is standard printing
This is expanded.
For this mode the letter W and the numeral one together turn the mode on and the letter W and the numeral zero together turn it off. Thus ESCape “Wl” turns on expanded and ESCape "WO” turns it off.
Those of you who are programmers may be interested in another form of expanded. In this alternate form, called one-line expanded, the printing is the same as that in the example but it is turned on by ASCII 14 and is turned off by a line feed, ASCII 20, or ESCape “W0”.

Mode Combinations

You can also combine modes using control codes. For example, you can make a title especially vivid by combining emphasized and expanded. In fact, you can combine nearly all of the print modes on the LX-90; your LX-90 printer can print such complicated combina­tions as double-strike emphasized expanded underlined subscript, although you may never want such a combination. The point is, how­ever, that the LX-90 has the ability to produce almost any combina­tion you can think of; it’s up to you to decide which ones you want to use.
To see emphasized combined with expanded, change two lines in your previous program:
20 LPRINT CHR$(27)"Wl"CHR$(27)"E";
30
LPRINT "Emphasized expanded"
25
When you run the program, your printout should match the one
below, showing that the two modes combine with no ‘trouble.
This is standard printing.
Emphasized expanded.
A later section in this chapter explains a special ESCape code, Mas­ter Select, which allows you to control seven features with one ESCape sequence.

Underline Mode

The LX-90 also has a mode that will underline characters and spaces. You turn it on with ESCape “-1” and off with ESCape “-0”. Note that the underline code is like the expanded code in that it uses a character, in this case the hyphen or minus sign, combined with numeral one to turn it on and a character combined with the numeral zero to turn it off. You can see it in action with the following program:
NEW
10 LPRINT "This text is not underlined." 20 LPRINT CHR$(27)"-l"; 30 LPRINT "This text is underlined."
This is not underlined.
This text is underlined.
As shown in the printout above, the underline mode is continuous, but some word processing and other applications programs produce an underline that leaves small gaps in the line as demonstrated in the printout below.
This uses the underline character.
If your software prints this type of underline, it is using the LX-90’s underline character (ASCII underline character is only five dots wide, it does not fill the spaces between characters.
95),
not the underline mode. Because the
26

Master Select

The LX-90 has a special ESCape code called Master Select that allows you to choose any possible combination of seven different modes: pica, elite, compressed, emphasized, double-strike, expanded, and underline. The format of the Master Select code is ESCape “!” followed by a number that is calculated by adding together the values of the modes listed below:
underline expanded double-strike emphasized compressed 4 elite pica
For any combination, just add up the values of each of the modes you want and use the total as the number after ESCape “!“. For exam­ple, to calculate the code for expanded underlined pica, add the fol­lowing numbers together:
underline expanded pica
To print this combination, therefore, you use ESCape "!” followed by the number 160. In the BASIC programming language the com­mand is CHR$(27)“!“CHR$(l60).
To try this number or any other, enter and run this short program, which will ask you for a Master Select number and then give you a sample of printing using that code.
128
32 16
8
1
0
128
32
0
160
10 INPUT "Master Select number";M 20 LPRINT CHR$(27)"!"CHR$(M) 30 LPRINT "This sample of printing uses "
40
LPRINT "Master Select number";M
50 LPRINT CHR$(27)"@"
In this program, you can use any number you calculate by using the formula above, but remember that emphasized can’t combine with compressed or elite. If you try to combine emphasized with either of the two narrow pitches, you won’t harm your printer; it will simply use a priority list in its memory to determine which mode to use.
27
The printer’s priority list causes a combination of emphasized and
elite to produce elite only, a combination of emphasized and com-
pressed to produce emphasized only, and a combination of all three to
produce compressed elite. Also remember that elite or compressed will cancel pica.
Master Select is a powerful code that gives you an easy way to produce multiple combinations with a single command. To see double-strike emphasized underlined printing, for example, you need only one ESCape code instead of three.
Indeed, Master Select is such a powerful feature that it may occa­sionally be more powerful than you want it to be. Because it controls seven different modes, a Master Select code will cancel any of those seven that are not selected. For example, suppose that you have a page in elite and want part of it underlined. If you use ESCape "!”
turn on underlining, your instead of underlined elite because the Use
129
for underlined elite.
LX-90
will begin printing in underlined pica
128
code does not include elite.
128
to

Superscript and Subscript

Your
LX-90
can use for mathematical formulas, footnotes, and other items that require numbers or letters above or below the usual print line. ESCape
“SO” turns on superscript and ESCape
“T” turns off either one. You can see them in action with the program below:
can also print superscripts and subscripts, which you
"Sl"
turns on subscript. ESCape
10 LPRINT "The formula for water is H"; 20 LPRINT CHR$(27)"S1";"2"CHR$(27)"T"; 30 LPRINT "0." 40 LPRINT CHR$(27)"@"
The formula or water is H2O.
Now that you see how to use the ESCape sequences for superscript
and subscript, you can devise your own examples.
28
Chapter
6
Page Formatting
Although the LX-90 printer has many sophisticated commands to set margins, line spacing, and horizontal and vertical tabs, this chap­ter won’t take up your time with extensive discussions of these because most are taken care of by applications programs. Instead, this chapter describes a few commands that the average user might need. For more information, see Appendixes B and C, where all the commands are listed and described.

Margins

The LX-90 allows you to set the left and right margins with simple ESCape sequences. The left margin command is ESCape "1” followed by the number of the column you choose for the left margin. The right margin command is ESCape “Q” followed by the column number of the right margin you want. For the left margin command, be sure to use a lowercase letter 1, not the numeral one.
If your word processing program does not allow you to change the margins, you can send margin commands to your LX-90 with BASIC or another programming language before you print your documents. For example, if you prefer wider margins than your word processing program gives you, run the following BASIC program before print­ing. This program gives you a left margin of 60, but you can use any numbers you prefer for the margin com­mands .
10
and a right margin of
NEW 10 LPRINT CHR$(27)"1"CHR$(l0); 20 LPRINT CHR$(27)"Q"CHR$(60);
A program like this also allows you to choose the margins you prefer for program listings. Just remember that once you run a pro­gram that sets margins, those margins are in effect until you change them with new margin commands or turn off or reset the printer.
29
You should be aware that a few applications programs reset the
printer before each document or file they print. These programs will,
of course, cancel your new margin settings. If your program resets the printer, use its installation program to remove all codes from the ini­tialization sequence. See Appendix E.
The maximum right margins on the LX-90 printer are 80 in pica, 96 in elite, 132 in compressed, and 160 in compressed elite. For further information on this command see Appendix B.

Skip Over Perforation

If you are using continuous paper for printing program listings or
other material not controlled by an applications program, you may find that the LX-90 prints right over the perforations between pages. The LX-90 has an ESCape code to prevent this: the ESCape “N” com­mand. You send ESCape “N” followed by the number of lines you want the LX-90 to skip at the bottom of a page. For example, in BASIC the following line will make the LX-90 skip 6 lines after each 60 lines if your printer is set for II-inch paper:
10 LPRINT CHR$(27)"N"CHR$(6);
Since an ll-inch page is 66 lines, this will give you one inch of blank space at the bottom of each page. If you prefer to have half of the blank space at the top of the page and half at the bottom, simply set
the top of page approximately three lines (1/2 inch) below the perfora­tion. (See the section on paper loading in the LX-90 manual if you
need to refresh your memory on setting the top of page.)

Line Spacing

Ordinarily you don’t have to worry about how the printer moves
the paper so that it doesn’t print lines of text on top of each other; the
LX-90 takes care of this without any special instructions. The line
spacing on the LX-90, however, can be changed with an ESCape code.
The movement of the paper between lines is called a line feed and
the distance the paper moves is called a line space. In ordinary print­ing the line spacing is l/6-inch, which produces six lines of print per inch. The standard spacing is the same as 12 rows of dots. Since the LX-90 characters use 9 rows of dots, the 12-dot line spacing leaves 3 blank rows between the lines of text.
30
The standard line spacing is the only one you need for almost all printing of text, but in some cases you may want to increase or decrease the space between lines. The LX-90 has several commands to do this. ESCape “0” or ESCape “1” decreases the line spacing to l/9-inch, and ESCape “2” returns it to l/6-inch.
In addition there are commands to specify the line spacing in 72nds of an inch and 216ths of an inch. If you need to make such fine adjust­ments in the line spacing, see Appendix B for the proper commands. In the chapter on dot graphics you will see how useful changes in line spacing can be.

Paper Out Sensor

Under the platen (the black roller) of your LX-90 printer is a small switch that senses whether or not paper is in the printer. When the end of the paper passes this switch, it triggers a signal that sounds the beeper and stops your printing. This saves wear on your print head, ribbon, and platen, but because of the distance between the switch and the print head, it stops the printing about 2 inches from the end of the page. Therefore, if you use single-sheet paper in your LX-90, you can’t print on the last two inches of each page without an adjustment.
If you need to print on the last two inches of single sheet paper, there are two solutions: send the printer an ESCape “8” or change one of the switches described in Appendix D. Then the printer will ignore the paper-out signal. This will allow you to print on the last part of each page, but be careful not to allow the LX-90 to print when there is no paper in it.

Justification with NLQ

The NLQ (Near Letter Quality) mode offers a justification com­mand that gives you four choices in the formatting of your text. The command is ESCape “a” followed by one of these numbers:
0 Left justify 1 Center 2 Right justify 3 Auto justify
Left justification is the standard format, in which the left margin is
even and the right margin is not. This is the way most typewritten pages look.
31
The centering command centers a line of text between the margins.
This is handy for headings, titles, and captions.
Right justification is the opposite of left justification. The right mar-
gin is even and the left is not.
Auto justification puts extra spaces between words where necessary so that both the left and right margins are even. This is the way most magazines, newspapers, and books (including this one) are printed.
With this command, you need a WIDTH statement at the begin­ning of your program. The following line shows the proper format.
10 LPRINT WIDTH "LPT1:",255
When you are using auto justification use of paragraphs only, not at the end of each line of text. Also keep in mind that changing the right margin may make justified text look better. The next paragraph is printed with this feature.
Since most word processing programs have
carriage returns at the end
their own justification commands, use this ESCape code only with BASIC or another programming
language,
not
with a
word
processingprogram.
When you use any of the justification commands, be sure to send
the NLQ
command first.
32
Chapter 7
User-Defined Characters
The LX-90 has several hundred different characters stored in its Read Only Memory. Although this number includes draft, Near Let­ter Quality, international, and graphics characters, sometimes you would like to have a few more. For those occasions when you need a special character or a few letters in a different typeface, the LX-90 allows you to create your own characters and print them just as if they were ordinary letters.

Defining Your Own Characters

The printout below displays a few such characters to give you an
idea of what can be done, but remember that you can create whatever
you need or want.
It may seem that designing a character and telling the LX-90 how to print it would be extremely complicated, but in this chapter the task is reduced to a simple three-step process: planning your character, run­ning one program that tests your work and calculates the required DATA numbers, and running another program to put the character in your printer’s Random Access Memory (RAM) for use whenever you need it.
Because the high-resolution NLQ (Near Letter Quality) mode uses
many more dots per character than the draft mode, defining NLQ
characters is somewhat more complex than defining draft characters.
You will find the programs for defining NLQ characters at the end of
this chapter.
After you have created your own characters, you can re-program seldom-used keys to generate the user-defined characters. For exam­ple, you will be able to type < to print R .
33
Your user-defined characters can be utilitarian or imaginative, any­thing from a scientific symbol to script letters for your initials. Just follow the simple steps below.
The only restriction on your creativity is that the characters you define must follow the same rules that govern the rest of the characters printed by the LX-90. In Figure 7-l are four pica letters with a grid of lines behind them so that you can see how they are designed.
As you look at these characters, notice the three rules that govern their design: the column on the right side is always left blank so that there will be spaces between the characters on a line; a character can use the top row or the bottom row, but no character uses both the top and the bottom row; and a dot can be placed on a vertical line only when the columns next to that line are not used.
Figure 7-1. LX-90 dot matrix characters

Designing Process

Suppose that you want to print the scientific symbol for the planet
Mercury. Although the LX-90 has a number of special symbols, Mer­cury’s symbol is not one of them. You can, however, create and print such a symbol with ease. First, use a grid like the one in Figure 7-2 to
plan where to place the dots.
34
123456789
Figure
7-2.
Grid for designing draft characters
Because the last two columns are reserved for the space between characters, they are not included in the grid. And since most charac­ters do not use the bottom two rows, a heavy line indicates the usual lower limit for an LX-90 character.
When you place your dots on this grid, remember that dots cannot
go on horizontal lines, but they can go on vertical lines so long as they
do not overlap any other dots. As you design your characters, draw the dots as large as you see them in the example on the left in Figure
7-3.
If you draw them smaller, you may have overlapping dots with-
out realizing it.
8 7 7 6 5 4 3 2
1 1
8
6 5 4 3 2
dot on horizontal line
overlapping dots
dot on horizontal line
123456789
Figure
7-3,
123456789
Correct and incorrect designs
If you do accidentally call for overlapping dots, don’t worry. The
program will still work, but only one of the dots will be printed.
35

Definition program 1

The BASIC program below will help you translate your design into a character your LX-90 can print. Type it in now so that you can run it soon.
NEW
100 DIM F(9) 110 FOR I=1 TO 9 120 PRINT "WHICH ROWS HAVE DOTS IN COLUMN";I 130 INPUT R: IF R=0 THEN 150 140 F(I)=F(I)+2A(R-1) 150 IF R=0 THEN NEXT I ELSE GOT0 130 160 LPRINT CHR$(27)":"
CHR$(0)CHR$(0)CHR$(0); 170 LPRINT CHR$(27)"%"CHR$(1)CHR$(0); 180 LPRINT CHR$(27)"&"CHR$(0)"<<"; 190 LPRINT CHR$(128);
200
FOR X=1 TO 9 210 LPRINT CHR$(F(X));: NEXT X 220 LPRINT CHR$(0)CHR$(0); 230 LPRINT "YOUR CHARACTER IN PICA: < < <" 240 LPRINT "IN EXPANDED EMPHASIZED PICA: "; 250 LPRINT CHR$(27)"!*< < <" 260 LPRINT CHR$(27)
"!"CHR$(0)"YOUR DATA NUMBERS:"
270 FOR K=1 TO 9: LPRINT F(K);: NEXT K
300 LPRINT: END
So that you can see how the program works, the next paragraphs present the steps used to create the symbol for Mercury. First is the grid used to design the character.
123456789
Figure
36
7-4.
Design for character

Running the program

Now run the program. For each of the nine columns, the program asks for the numbers of the rows in which you want dots to appear. Enter the row numbers one at a time, pressing the ENTER key after
each one. When you have entered all the numbers for a column or
when you want no dots in a column, press ENTER without a number. Remember that the vertical lines in the grid are the even numbered columns.
To see Program 1 produce the character in Figure 7-4 run the pro­gram and follow these instructions: When the screen message asks
what rows have dots in the column 1, respond with ENTER to indi-
cate that no dots go in that column. For column 2 (the vertical line), press
7,
ENTER, 5, and ENTER again to indicate that you want dots
in rows 7 and
5.
Then press ENTER alone to indicate that no more
dots go in column 2. For column 3 press 8, 6, 4, and 2, with an
ENTER after each of them. Then press ENTER to finish with column
3 and go on to column 4.
For column 4 press ENTER only. (The rest of the directions assume that you know to press ENTER after each number and one extra time to end the entries for each column.) For column
1.
For column 6, press ENTER only; for column 7 enter 8, 6, 4, and 2; for column 8 enter 7 and
5;
and for column 9 press ENTER only.
5,
enter
6 ,4, 3, 2,
and
Now wait a moment for your computer to calculate the dot pat­terns and your LX-90 to print the new character in two different type­styles. Your printout also gives you nine numbers, which you will use in the next program. You should get the printout you see below:
When you get to this point with a character of your own, you see how it looks and whether or not you like it. If you want to make any changes, move the dots on the grid as needed and re-run the program.
If you want to put dots in the bottom row, change the number in line
190
from
128
to
0.
Then the usable rows will be as shown in Figure
7-5.
37
123456789
Figure 7-5. Using the bottom eight rows

Definition program 2

Once the character looks right, type in the next program. The pro­gram as listed creates the symbol for Mercury, but you can use it for any characters you create if you make one or two changes explained after the program listing.
NEW
90
FOR P=58 TO
63:
LPRINT CHR$(P);: NEXT P
95 LPRINT
100 K=1: IF K>3 THEN A=58 ELSE A=60 110 LPRINT CHR$(27)
":"CHR$(0)CHR$(0)CHR$(0);
120 LPRINT CHR$(27)"%"CHR$(1)CHR$(0);
130
LPRINT CHR$(27)"&"CHR$(0)CHR$(A)CHR$(A-1+K);
140
FOR Z=1 TO K 150 LPRINT CHR$(139); 160 FOR X=1 TO 9 170 READ R 180 LPRINT CHR$(R);: NEXT X 190 LPRINT CHR$(0)CHR$(0);
200
NEXT Z
210 DATA 0,80,170,0,47,0,170,80,0
290 FOR P=58 TO 63: LPRINT CHR$(P);: NEXT P 300 LPRINT: END
To use program 2 for your own character or characters, change the DATA numbers in line program DATA numbers for each character on separate lines as you see in the example on the next page.
1.
If you have created more than one character, put the
210
by substituting the numbers generated by
38
210 DATA 112,8,0,138,116,138,0,8,112 220 DATA 58,68,2,128,0,128,2,68,58
Check your work by making sure that there are nine numbers in
each DATA line and that the numbers are separated by commas.
To define more than one character, use the total number of charac­ters you are defining instead of the 1 in line many as six characters at a time. Just run program 1 several times and enter all the DATA numbers in program 2.)

Running the program

When you run this second program, it prints six characters, then re­defines some or all of them and prints them again, as in the example below.
When printed by your own program, the two lines provide you with a key to the characters your LX-90 will now print. When you press the key for one of the characters in the top row, the printer will print the corresponding character in the bottom row. In the example
above, if you press < your LX-90 will print (although your screen
will continue to show the character < ).
100. (You
can define as
Because the program puts these new definitions in your printer’s
Random Access Memory (RAM), it will print the characters in the
bottom row unless it is turned off or receives the reset code.
If you have designed a few characters and want to use them with your word processing program, for example, just run program 2 before you start using your word processing program. Then use the
two-line printout as your guide to tell you which keys to press for
your new characters.

Defining NLQ Characters

Since NLQ characters use many more dots than draft characters, defining NLQ characters is more complex than designing draft ones. If you use the grid and the program in this section, however, you will be able to design your own NLQ characters.
39

NLQ grid

Because the NLQ characters can use as many as 18 dots vertically
and 12 dots horizontally, you plan your designs on a different grid
than the one for draft characters.
128128
64 3232 16
88 44 22 11
128128
64
3232 16
88 44 22 11
128128
64
1 2 3 4 5 6 7 8 9 10 11 12
Figure
7-6.
Grid for NLQ characters
On this grid you can use any numbered line or space. As you can see, that includes the bottom line and the line on the right side. You should remember to leave one or two columns blank for space
between characters, however.
Each NLQ character definition requires
36
data numbers. There-
fore, each vertical column must be divided into three sections for the
calculation of data numbers. The process is not difficult once you get some practice using it.
Figure
7-7
shows a single column to make clear how the data num-
bers are calculated. Notice that using circles instead of dots in design-
ing NLQ characters makes it easier to keep track of overlapping dots.
40
Figure 7-7. Data numbers for one column
To calculate the data numbers for this column, note which dots are
used in the top group (the top eight positions) and add their values
together. Then go down to the middle group (the next 8 positions) and add the values of any dots that are used there. Finally, look at the bottom group (2 dot positions) and add together the values used there.
If no dots are used in a group, the data number for that group is zero. All zeros must be entered in the DATA statements for the NLQ definition programs.
Figure 7-8 shows you how to use the NLQ character definition with a musical design. The figure shows the design drawn on a grid and the data numbers printed at the top or bottom of each column.
41
126
128
128
0 7 4 4 7 0
255 128 135 253 0
3
128 0 0 0 0 0
64 32 16
8 4 2 1
64 32 16
8 4 2
1
64
1 2 3 4 5 6 7 8 9 10 11 12
0 0 4 4 4 0 1 3 0
128 130
128 0 0 0 0
135 0
Figure 7-8. Musical design and data numbers
If you look at each column individually, you can see how the data
numbers are calculated.

NLQ definition program 1

Now type in and run the following program. It has the data num-
bers for the musical design. For a character of your own, change the
data numbers in lines 130 - 150.
42
NEW
10 LPRINT CHR$(27)"x"CHR$(1)
20 LPRINT CHR$(27) ":"CHR$(0)CHR$(0)CHR$(0);
30
LPRINT CHR$(27)"%"CHR$(1)CHR$(0);
40
LPRINT CHR$(27)"&"CHR$(~)~((";
50 LPRINT CHR$(0)CHR$(12)CHR$(0);
60
FOR X=1 TO
36
70 READ C: LPRINT CHR$(C);
80
NEXT X
90 LPRINT "YOUR CHARACTER IN PICA: < < <"
100 LPRINT "IN EXPANDED EMPHASIZED PICA: "; 110 LPRINT CHR$(27)"!*< < <" 120 LPRINT CHR$(27)"!" CHR$(0)
130
DATA 0, 1, 0, 0, 3, 0, 128, 0, 3, 128, 7, 255, 0
140
DATA 4, 128, 0, 4, 128, 0, 4, 130, 0, 4, 135, 0
150 DATA 4, 135, 0, 7, 253, 0, 0, 0, 0, 0, 0, 0
YOUR CHARACTER IN PICA:
IN EXPANDED EMPHASIZED PICA:
When you run this program for your own character, you find out whether or not it looks right. If it doesn’t, move the dots as needed, recalculate and change the data numbers, and run the program again.

NLQ definition program 2

When you are satisfied with the character you have created, enter
and run the next program. Use your data numbers instead of the ones in lines 130 - 150. If you want to define more than one character, change line 10 so that J equals the total number of characters you are defining (the maximum is six) and enter the extra data numbers
each character).
(36
for
43
NEW
10 J=1: IF J>3 THEN A=58 ELSE A=60 20 LPRINT CHR$(27)"x"CHR$(1) 30 FOR X=58 TO 63: LPRINT CHR$(X)" ";: NEXT X 40 LPRINT CHR$(27) ":"CHR$(0)CHR$(0)CHR$(0)
50 LPRINT CHR$(27)"%"CHR$(1)CHR$(0); 60 LPRINT CHR$(27)"&"CHR$(0)CHR$(A)CHR$(A-1+J); 70 FOR Y=1 TO J
80 LPRINT CHR$(0)CHR$(l2)CHR$(0); 90 FOR X=1 TO 36: READ C: LPRINT CHR$(C)
100 NEXT X: NEXT Y 110 FOR X=58 TO 63: LPRINT CHR$(X)" ";: NEXT X 120 LPRINT: END 130 DATA 0, 1, 0, 0, 3, 128, 0, 3, 128, 7, 255, 0 140 DATA 4, 128, 0, 4, 128, 0, 4, 130, 0, 4, 135, 0 150 DATA 7, 135, 0, 7, 253, 0, 0, 0, 0, 0, 0, 0
When you run program
one or more of them and prints them again. As with the draft charac-
ters, you use this two-line printout as a guide to the new characters
your LX-90 will print. You can use them with an applications program
or a program you write yourself.
2,
it prints six characters, then redefines
44
Chapter 8
Introduction to Dot Graphics
The dot graphics mode allows your graphs, charts, or almost any other pictorial material you can devise. Instead of using the standard letters and numbers, the graphics mode prints dots column by column and line by line. You plan where you want the dots to appear and then use a program to tell the where to put them.
Because many software programs use dot graphics, you may be able to print pictures and graphs like the ones on this page and the next
by simply giving your software a few instructions. A chart like the one
on the next page can be created and printed in less than 20 minutes.
LX-90
to produce pictures,
LX-90
45
INSTALLATIONS BY MONTH
0 JUL
The quickest and easiest way to print graphics on your LX-90 is to use a commercial graphics program. With such programs you usually create an image on your monitor or TV screen and then give a com­mand to send the image to the printer.
If you use commercial software that produces graphics, all you need to know about dot graphics is how to use the software. If, on the other hand, you wish to do your own programming or merely wish to understand how the LX-90 prints graphics, read on.
AUG SEP
OCT
NOV DEC

Dot Patterns

Graphic images are formed on the LX-90 about the same way that pictures in newspapers and magazines are printed. If you look closely at a newspaper photograph, you can see that it is made up of many small dots. The LX-90 also forms its images with patterns of dots, as many as 240 dot positions per inch horizontally and 72 dots per inch vertically. The images you print on the LX-90 can, therefore, be as finely detailed as the one on the first page of this chapter.
If you plan carefully where you want the dots to appear and then use or create a program that gives the proper instructions to the printer, your LX-90 will print almost any picture you can imagine.

The Print Head and Graphics

Chapter 3 told you a little about how the print head on the LX-90 prints letters: it receives a code for a letter and then fires a pattern of pins to form that letter.
46
In the main graphics mode, however, the LX-90 prints only one column of pins for each code it receives, and it uses only the top eight of the nine pins.
Therefore, your graphics program must send codes for dot pat­terns, one number for each column in a line. For each of those columns the print head prints the pattern of dots you have specified.
To print figures taller than eight dots, the print head makes more
than one pass. It prints one line, then advances the paper and prints another, just as it does with text.
To keep the print head from leaving gaps between the graphics lines
as it does between the text lines, the line spacing must be changed to eliminate the space between lines. With a change in line spacing, the LX-90 can print finely detailed graphic images that give no indication
that they are made up of separate lines, each no more than 8/72nd of
an inch tall.
Each pass of the print head prints one piece of the total pattern, which can be as tall or short and as wide or narrow as you desire. You don’t have to fill the whole page or even an entire line with your
graphics figures. In fact, you can use as little or as much space as you
like for a figure and put it anywhere on the page.

Graphics Mode

The graphics mode command is quite different from the other com­mands covered so far in this manual. For most of the other LX-90 modes, such as emphasized and expanded, one ESCape code turns the mode on and another turns it off. For graphics, the command is more complicated because the code that turns on a graphics mode also spe­cifies how many columns it will use. After the LX-90 receives this code, it interprets the next numbers as pin patterns and prints them on the paper.
The LX-90 has several different graphics densities, but the first exer­cises keep things simple by using only one. The code for entering single-density graphics mode is ESCape “K” n1 n2. In BASIC the com­mand is given in this format:
LPRINT CHR$(27)"K"CHR$(nl)CHR$(n2);
ESCape “K” specifies single-density graphics, and the next two num­bers (n1 and n2) specify the number of columns reserved for graphics.
47
The graphics command requires more than one number to specify how many columns to reserve because as many as 1920 columns are possible in graphics printing. Since the LX-90 doesn’t use decimal numbers larger than 255, the graphics mode command uses two num­bers for reserving columns.
To figure the number of columns reserved, multiply the second
number by 256 and add it to the first number. Since the command is
set up for two numbers, you must supply two even if you only need one. When you need less than 256 columns, just make n1 the number of columns you are reserving and make n2 a zero.

Pin Labels

Once you put the printer into graphics mode and reserve the num­ber of columns you want, your next step is to tell the print head which pins to fire in each column. There are 256 possible combinations of eight pins, and you send only one number for each column. The num­bering system that allows you to use a single number to specify which
of the 256 possible patterns you want is shown in Figure 8-l.
I
128
64 32
16
8 4 2 1
Figure 8-1. Pin labels
To fire any one pin, you send its number. To fire more than one pin
at the same time, add up the numbers of the pins and send the sum to the printer. With these labels for the pins, you fire the top pin by sending 128. To fire the bottom graphics pin, you send 1. If you want to fire only the top and bottom pins, you simply add 128 and 1, then send 129.
By adding the appropriate label numbers together, you can fire any
combination of pins. Figure 8-2 shows three examples of how to calcu­late the number that will fire a particular pattern of pins.
48
Figure
With this numbering system, any combination of the eight pins adds up to a decimal number between 0 and 255, and no numbers are duplicated.
Now that you know the principles of Epson graphics, you’re ready for two simple exercises, more densities, and then something more complex as a basis for writing your own programs.
8-2. Calculating numbers for pin patterns

First Graphics Program

Your first graphics exercise could be a program that prints a single column of dots, but it is difficult to see the pattern in a single column of dots, so your first graphics program prints the same pattern 40 times.
The first line is the code for 40 columns of single-density graphics. As usual, the example is in BASIC, but you can adapt it to the pro­gramming language you prefer.
NEW 10 LPRINT CHR$(27)"K"CHR$(40)CHR$(0);
The second line is the data that is printed as pin patterns. Be sure
that you type in the semicolons in both lines:
20 FOR X=1 TO 40: LPRINT CHR$(74);: NEXT X
That’s it. Run the program to see the result below. Although it is not
as interesting as the examples at the beginning of this chapter, it does allow you to see exactly how the mode works.
49

WIDTH Statements

Some software (including IBM Personal Computer BASIC) auto-
matically inserts the control codes for a carriage return and a line feed
after every 80 - 130 characters. This insertion is usually no problem
with text, but it can spoil your graphics. In the graphics mode it may
insert the control codes in the middle of a line.
You can usually prevent these unwanted control codes with a
WIDTH statement. The format in BASIC is shown below:
WIDTH "LPT1:",255
Put a WIDTH statement in one of the first lines of all your graphics programs. It is easier to put a WIDTH statement in all of your pro­grams than to examine each one to see whether or not such a state­ment is necessary.

Multiple-Line Exercise

Now that you’ve entered and run a simple graphics program, you
can go on to an exercise that shows you how the LX-90 combines several lines of graphics for a figure taller than eight dots.
Start with a line for 100 columns of single-density graphics and lines to print two pin patterns. Notice that since there are two pin patterns in the loop, it is only executed 50 times.
NEW
10 WIDTH "LPT1:",255
40
LPRINT CHR$(27)"K"CHR$(100)CHR$(0);
50 FOR X=1 TO 50: LPRINT CHR$(85)CHR$(42);
60 NEXT X: LPRINT
100 LPRINT CHR$(27)"@"
If you run the program now, you’ll see how one line of the pattern
looks:
To see how more than one line combines to form a figure, enter and run the following program, which uses the lines you have already typed and adds several more.
50
10 WIDTH "LPT1:",255 20 LPRINT CHR$(27)"A"CHR$(7) 30 FOR R=1 TO 3 40 LPRINT CHR$(27)"K"CHR$(100)CHR$(0); 50 FOR X=1 TO 50: LPRINT CHR$(85)CHR$(42); 60 NEXT X: LPRINT 70 LPRINT CHR$(27)"K"CHR$(100)CHR$(0); 80 FOR X=1 TO 50: LPRINT CHR$(42)CHR$(85); 90 NEXT X: LPRINT: NEXT R 100 LPRINT CHR$(27)"@"
Now run the program to see the six print lines combine into a pat-
tern:
Because the short and simple program that produced the pattern demonstrates many elements of graphics programming, each line is explained below.
Line
10
changes the line spacing to 7/72 of an inch, which is the height of the dot patterns used in the program. Therefore, there is no space between the print lines.
Line 20 begins a loop to produce multiple print lines. Lines 30 and 40 were explained previously. Lines 60 and 70 are similar to lines 30 and 40 except that line 70 uses a reversal of the patterns in line 40. As the loop is executed, the program prints lines 40 and 70 alternately so that the patterns of the print lines will fit together well.
Notice that the graphics command can be in effect for only one print line. The command is in lines 30 and 60 so that it is issued each time a new print line is begun. To print more than one line of graphics, the graphics command must be issued before each line.
Line 90 is the reset code to return the printer to its defaults.
51

Density Varieties

Although all the examples so far in this chapter have been in the single-density graphics mode, the LX-90 offers five other eight-pin density modes and two nine-pin ones. Nine-pin graphics is not neces­sary for most uses, but you can find its command (ESCape “A”) in Appendix B. All the eight-pin densities and their commands are described in Table
8-l.
Table 8-1. Graphics modes
You are familiar with the command format that uses the ESCape code and a letter, but LX-90 graphics commands can also be in the
following format:
LPRINT CHR$(27)"*"CHR$(m)CHR$(nl)CHR$(n2);
with m being the mode number found in the left column of Table As usual, nl and n2 reserve the number of columns for graphics. The
seven modes include six densities, with two speeds for double-density.
8-l.
52

Reassigning Code

The LX-90 has a graphics command that changes one graphics
mode to another. You can use it with many commercial graphics soft-
ware programs to change the density and shape of your printouts.
The code is ESCape “?s” n, where s is one of the four alternate graphics codes (K, L, Y, or Z) and n is the number of the new code
For example, if you send the following code before you run a
graphics program, it will change every instance of mode “Y”
(high-speed double-density) to mode 5 (one-to-one).
(O-6).
LPRINT CHR$(27)"?Y"CHR$(5)
As usual, this example is in BASIC, but you can send the code in
any programming language.
Even if you don’t know which code your graphics program uses, a little experimentation should tell you whether the reassigning code can improve your graphics printouts.

Column Reservation Numbers

Now that you’ve seen the rest of the 8-pin graphics densities and the reassigning code, this section explains in more detail the part of the graphics command that reserves the number of columns for graphics (the numbers nl and n2 in the examples).
If you need fewer than columns you want and n2 is zero. As you can see in Table ever, a single line will hold as many as 1920 columns in quadruple­density. Specifying more than (n2) fits in. The first number that you send (n1) indicates a number of columns, but the second does not represent a number of columns; it is multiplied by 256 and added to n1. The command for the maximum number of dots you can reserve on the LX-90, then, is:
255
columns of graphics,
255
is where the second number slot
n1
is the number of
8-1,
how-
CHR$(27)"Z"CHR$(l28)CHR$(7);
or, in the other format:
CHR$(27)"*"CHR$(3)CHR$(128)CHR$(7);
which is 128 dots plus 7 times 256 dots, for a total of 1920 dots in one row.
53
Once you have chosen the number of columns you want to use, you can have your program do the calculations for you with the fol­lowing format:
CHR$(27)"L"CHR$(N MOD 256)CHR$(INT(N/256));
N is the total number of columns you want to specify. The MOD (modulus) function calculates the value for n1, and the INT (integer) function calculates the value for n2. For programming languages other than BASIC, consult your manual for the proper form for these functions.
This format can be used with any graphics density and with any value of N up to the maximum number of columns per line for that density.

Designing Your Own Graphics

This section takes you through the development of a graphics pro-
gram. The example is not especially complicated, but it does include the same steps you would use for a more complex figure so that you have the basis for designing graphics on your LX-90.
You should plan your figure with dots on graph paper, but before
beginning to place the dots, you must decide which graphics density you want. Figure 8-3 shows the differences between the three most­used graphics modes so that you can choose the one you want.
Low-speed
Double
Figure 8-3. Designing in different densities
In this figure you can see the main rules for graphic design in the
three densities. In single density no dots can be placed on vertical
lines. In high-speed double density dots can be placed on vertical
54
lines, but no dots can overlap. In low-speed double density dots can be placed on vertical lines and they can overlap.
Now look at the figure designed for high-speed double density. It
should point you in the right direction for your own designs.
Figure 8-4. Arrow design
After plotting all the dots as in Figure 8-4, you calculate the num­bers for each pin pattern by dividing the design grid into separate print lines. For the arrow design, the grid was divided into three lines, each seven dots high. Then each column was examined and the sums of the pin values determined. This process for the first line is shown in Figure 8-5. The pin values are on the left side and the sums are at the bottom
of each column.
Because IBM Personal Computer BASIC will not send CHR$(26), do not use that number in any of your graphics programs.
Those of you who have read the previous chapter will see that designing graphics is much like designing user-defined characters.
55
8 10 8 8 8 8 8 8 4 2 1 0 0 0 0 0 0 0 0 0 23 4 1 0 0
4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 2 0 0 0
Figure 8-5. First line of arrow figure
The numbers for the second and third lines were calculated in the same manner. Once the numbers for the pin patterns are calculated, they go in DATA statements, separated by commas.
First is the whole program and its printout, then an explanation of two techniques not used before:
NEW
90 WIDTH "LPT1:",255 100 LPRINT CHR$(27)"A"CHR$(7)
590
FOR K=1 TO
600
LPRINT CHR$(27)"Y"CHR$(50)CHR$(0);
3
610 READ N: IF N=128 THEN 650 620 IF N>=0 THEN LPRINT CHR$(N);: GOT0 610 630 READ P,R: FOR J=1 TO -N 632 LPRINT CHR$(P)CHR$(R);: NEXT J
640
GOT0 610
650 LPRINT: NEXT K: LPRINT CHR$(27)"@": END
800 DATA 8, 4, 10, 1, -6, 8, 0, 4, 0, 2, 0, 1, -9, 0, 0, 0 805 DATA 23, 8, 4, 2, 1, -2, 0, 0, 0, 128 810 DATA 0, 0, 0, 0, 64, 32, 17, 10, 4, 0, -6, 0, 0, -10 815 DATA 64, 0, 0, 0, 0, 64, 32, 17, 10, 4, 128
820 DATA 2, 4, 10, 16, 34, 64, -5, 2, 0, 4, 0, 8, 0, 16
825 DATA 0, -9, 32, 0, 61, 2, 4, 8, 16, 32, 64, 0, 0, 0, 128
56
In this program the number
end of a print line. This is the reason for the IF-THEN statement in line
610
that skips to line
The other special technique used in this program is found in lines
620
and 630. Since some of the data numbers are repeated many times, using negative DATA numbers for repetitions saves typing. Line 620 tests for a negative number, and if it finds one, reads the next two numbers and prints their pin patterns the number of times indi­cated by the negative number.
For example, when the minus 6 in line 800 is read, the program then reads the next two numbers (8 and 0) and sends them to the printer 6 times. This feature is not a necessary part of the program, but it does allow you to type fewer data numbers.
Otherwise the program is a straightforward graphics program that uses ‘-/-dot line spacing and reads numbers from DATA statements and sends them to the printer. If you want to see the figure in other densi­ties, change the "Y" in line 600 to “L” or “Z”.

String variables

In a long and complicated graphics program, typing in the graphics command or repetitive data numbers over and over can become time­consuming. You can avoid much of the repetitive typing by storing commands and data in string variables.
650
128
in the DATA statements signals the
and causes a line feed.
Look at the program below. It is the same as the multiple-line exer­cise earlier in the chapter except for the string variables.
10 WIDTH "LPT1:",255 20 G$=CHR$(27)+"K"+CHR$(100)+CHR$(0) 30 A$=CHR$(85)+CHR$(42) 40 B$=CHR$(42)+CHR$(85) 50 LPRINT CHR$(27)"A"CHR$(7) 60 FOR R=1 TO
3
70 LPRINT G$; 80 FOR X=1 TO
50:
LPRINT A$;: NEXT X
90 LPRINT
100 LPRINT G$; 110 FOR X=1 TO 50: LPRINT B$;: NEXT X 120 LPRINT: NEXT R
130
LPRINT CHR$(27)"@"
57
Notice that the first line stores the whole graphics command in a
single string variable. In order to do this you must put plus signs
between the elements of the command. Once you have done this at
the beginning of the program, each time you enter LPRINT G$; you have issued the graphics command. Lines 20 and 30 do the same thing with the data used in this program. As you can see, the use of string variables saves some typing even in this short program. In a long program it can save you much more time and effort.
58
Appendix A
LX-90 Characters
This appendix is a listing of the characters produced by the decimal
codes from 0 through 255. For each code the listing provides the deci-
mal number (Dec), the hexadecimal number (Hex), and a printout of
the character that is printed by that code (Char). If the code does not produce a printable character, the word none or the abbreviation for its control code is in the Char column.
This listing is given four times: standard draft, standard NLQ, alter­nate draft, and alternate NLQ. The alternate character mode can be selected with a DIP switch (see Appendix D) or an ESCape code (see Appendix B) .
The codes for printer instructions, such as expanded and empha­sized printing, are in Appendix B.
A-l

Standard Character Mode (Draft)

Dec Hex Char
0 00 none
1
01 none 2 02 none 3 03 4 04 5 05 6 06 7 07 8 08 9
09 HT
10 0A LF 11 0B VT 12 0C FF 13 0D CR 14 0E SO 15 OF SI 16 10 17 11 18 12 DC2
19 13 !! 20 14 DC4 21 15 22 16 23 17 24 18 CAN 25 19 26 1A 27 1B ESC 28 1C 29 1D 30 1E 31 1F
Dec Hex Char
32 20 blank
33 21 34 22 35 23 36 24 37 25 38 26 39 27 40 28 41 29 42 2A 43 2B 44 2C 45 2D 46 2E 47 2F 48 30 49 31 50 32 51 33 52 34 53 35 54 36 55 37 56 38 57 39 58 3A 59 3B 60 3C 61 3D 62 3E
63 3F ?
Dec Hex Char
64 40 65 41 66 42 67 43 68 44 69 45 70 46 71 47 72 48 73 49 74 4A 75 4B 76 4C 77 4D 78 4E 79 4F 80 50 81 51 82 52 83 53 84 54 85 55 86 56 87 57 88 58 89 59 90 5A 91 5B 92 5C 93 5D 94 5E 95 5F
Dec Hex Char
96 60
97 61 98 62 99 63
100 64
101 65
102 66
103 67
104 68
105 69
106 6A
107 6B
108 6C
109 6D
110 6E
111 6F
112 70 113 71 114 72 115 73 116 74
117 75 118 76 119 77 120 78 121 79 122 7A 123 7B 124 7C 125 7D 126 7E 127 7F none
A-2
Standard Character Mode (Draft)
Dec Hex Char
128 80 129 81 130 82 131 83 132 84 133 85 134 86 135 87 136 88 137 89 138 8A 139 8B 140 8C 141 8D 142 8E 143 8F 144
90
145 91 146 92 147 93
148 94 149 95
150 96
151 97 152 98
153 99
154 9A 155 9B 156 9C 157 9D 158 9E 159 9F
Dec Hex Char
160 A0 161
A1
162
A2
163
A3 164 A4 165
A5 166
A6 167
A7 168
A8 169
A9 170
AA 171
AB 172
AC 173
AD 174
AE
175
AF 176
B0
177
B1 178
B2 179 B3 180 B4
181
B5 182 B6 183 B7 184 B8 185
B9 186
BA
187
BB 188 BC 189
BD
190 BE
191
BF
Dec Hex Char
192 C0 193 C1 194 C2 195 C3 196 C4 197 C5 198 C6
199 C7 200 C8 201
C9
202 CA 203 CB 204
CC
205 CD 206 CE 207 CF 208 D0 209 D1 210 D2 211 D3 212 D4 213 D5 214 D6 215 D7 216 D8 217 D9 218 DA 219 DB 220 DC 221 DD 222 DE 223 DF
Dec Hex Char
224
E0
225
E1
226
E2
227
E3
228
E4
229
E5
230
E6 231 E7 232
E8 233
E9 234
EA 235
EB 236
EC 237
ED 238
EE 239
EF 240
F0 241
F1 242
F2 243
F3 244
F4 245
F5 246
F6 247
F7 248
F8 249
F9 250
FA 251
FB 252
FC 253
FD 254
FE 255 FF none
A-3

Standard Character Mode (NLQ)

Dec Hex Char
0 00 none
1
01 none
2 02 none
3 03
4
04 5 05 6 06 7
07
8 08
9 09 HT
10 0A LF 11 0B VT 12 0C FF 13 0D CR 14 0E SO 15 0F SI 16 10 17 11 18 12 DC2
19 13 20 14 DC4 21 15 22 16 23 17 24 18 CAN 25 19 26 1A 27 1B ESC
28 1C 29 1D 30 1E
31 1F
Dec Hex Char
32 20 blank
33 21 ! 34 22 " 35 23 # 36 24 $ 37 25 % 38 26 & 39 27 '
40 28 (
41 29 ) 42 2A * 43 28 + 44 2C , 45 2D ­46 2E . 47 2F / 48 30 0 49 31 1 50 32 2 51 33 3 52 34 4 53 35 5 54 36 6 55 37 7 56 38 8 57 39 9 58 3A : 59 3B ; 60 3C 61 3D = 62 3E > 63 3F ?
<
Dec Hex Char
64 40 @ 65 41 A 66 42 B 67 43 C 68 44 D 69 45 E
70 46 F 71 47 G 72 48 H 73 49 I 74 4A J 75 4B K 76 4C L 77 4D M 78 4E N 79 4F O 80 50 P 81 51 Q 82 52 R 83 53 S 84 54 T 85 55 U 86 56 V 87 57 W 88 58 X 89 59 Y 90 5A Z 91 5B 92 5C 93 5D 94 5E 95 5F
Dec Hex Char
96 60 '
97 61 a 98 62 99 63 c
100 64 d 101 65 e 102 66 f 103 67 g 104 68 h 105 69 i 106 6A j 107 6B k 108 6C l 109 6D m 110 6E n 111 6F o
112 70 p
113 71 q
114 72 r 115 73 s
116 74 t
117 75 u 118 76 v
119 77 w
120 78 x 121 79 y 122 7A z 123 7B { 124 7C | 125 7D } 126 7E ~ 127 7F none
b
A-4
Standard Character Mode (NLQ)
Dec Hex Char
128 80 129 81 130 82 131 83 132 84 133 85 134 86 135 87 136 88 137 89 138 8A 139 8B 140 8C 141 8D 142 8E 143 8F 144 90 145 91 146 92 147 93 148 94 149 95 150 96 151 97 152 98 153 99 154 9A 155 9B 156 9C 157 9D 158 9E 159 9F
Dec Hex Char
160 A0 161 A1 162 A2 163 A3 164 A4 165 A5 166 A6 167 A7 168 A8 169 A9 170 AA 171 AB 172 AC 173 AD 174 AE 175 AF 176 B0 177 B1 178 B2 179 B3 180 B4 181 B5 182 B6 183 B7 184 B8 185 B9 186 BA 187 BB 188 BC 189 BD 190 BE 191 BF
Dec Hex Char
192 CO 193 C1 194 C2 195 C3 196 C4 197 C5 198 C6
199 C7 200 C8 201 C9 202 CA 203 CB 204 CC 205 CD 206 CE 207 CF 208 D0 209 D1 210 D2 211 D3 212 D4 213 D5 214 D6 215 D7 216 D8 217 D9 218 DA 219 DB 220 DC 221 DD 222 DE 223 DF
Dec Hex Char
224
EO
225
E1
226
E2
227
E3
228
E4
229
E5
230
E6 231 E7 232
E8 233
E9 234
EA 235
EB 236
EC 237
ED 238
EE 239
EF 240
F0 241
F1 242
F2 243
F3 244
F4 245
F5 246
F6 247
F7 248
F8 249
F9 250
FA 251
FB
252
FC
253
FD
254
FE
255
FF
none
A-5

Alternate Character Mode (Draft)

Dec Hex Char
0 00 none
1
01 none 2 02 none 3
03
4
04 5 05 6 06 7 07 8 08 9 09 HT 10 0A LF 11 0B VT 12 0C FF 13 0D CR 14 0E SO 15 0F SI 16 10 17 11 18 12 DC2 19 13 !!
20 14 DC4 21 15 22 16 23 17 24 18 CAN 25 19 26 1A 27 1B ESC 28 1C 29 1D 30 1E 31 1F
Dec Hex Char
32 20 33 21 34 22 35 23 36 24 37 25 38 26 39 27 40 28 41 29 42 2A 43 28 44 2C 45 2D 46 2E 47 2F 48 30 49 31 50 32 51 33 52 34 53 35 54 36 55 37 56 38 57 39 58 3A 59 3B 60 3C 61 3D 62 3E 63 3F
blank
Dec Hex Char
64 40 65 41 66 42 67 43 68 44 69 45
70 46 71 47 72 48 73 49 74 4A
75 4B
76 4C 77 4D
78 4E
79 4F 80 50 81 51 82 52 83 53 84 54 85 55 86 56 87 57 88 58 89 59 90 5A 91 5B 92 5C 93 5D 94 5E 95 5F
Dec Hex Char
96 60 97 61 98 62
99 63 100 64 101 65 102 66 103 67 104 68 105 69 106 6A 107 6B 108 6C 109 6D 110 6E 111 6F 112 70 113 71 114 72 115 73 116 74 117 75 118 76 119 77 120 78 121 79 122 7A 123 7B 124 7C 125 7D 126 7E 127 7F none
A-6
Alternate Character Mode (Draft)
Dec Hex Char
128
80 none
129
81
none
130
82 none
131
83
132
84
133
85
134
86
135
87
136
88
137
89
HT
138
8A
LF
139
8B
VT 140 8C FF 141
8D
CR 142 8E SO 143
8F
SI 144
90
145
91
146
92 DC2
147
93
!!
148
94
DC4
149
95
150
96
151
97
152
98 CAN
153
99
154
9A
155
9B
ESC 156 9C 157
9D 158 9E 159
9F
Dec Hex Char
160
A0
161
Al
162
A2
163
A3
164
A4
165
A5
166
A6
167
A7
168
A8
169
A9
170
AA
171
AB
172
AC
173
AD
174
AE
175
AF
176
B0
177
B1 178 B2 179 B3 180 B4 181
B5 182
B6 183 B7 184 B8 185 B9 186
BA 187
BB 188 BC 189
BD 190 BE 191
BF
Dec Hex Char
192 C0 193
C1 194 C2 195 C3 196 C4 197 C5 198
C6 199 C7
200
C8
201 C9 202 CA 203 CB 204
CC
205 CD 206
CE
207 CF 208
DO
209
D1
210
D2
211
D3
212
D4
213
D5
214
D6
215
D7
216
D8
217
D9 218 DA 219 DB 220
DC 221
DD 222
DE 223 DF
Dec Hex Char
224
E0
225
E1
226
E2
227
E3
228
E4
229
E5
230 E6
231
E7
232
E8
233
E9
234
EA
235
EB
236
EC
237
ED
238
EE
239
EF
240
F0
241
F1
242
F2
243
F3
244
F4
245
F5
246
F6
247
F7
248
F8
249
F9
250
FA
251
FB
252
FC
253
FD
254
FE
255 FF none
A-7

Alternate Character Mode (NLQ)

Dec Hex Char
0 00 none
1
01 none 2 02 none 3 03 4 04 5
05 6 06
7
07 8 08 9 09 HT
10 0A LF 11 0B VT 12 0C FF 13 0D CR 14 0E SO 15 0F SI 16 10 17 11 18 12 DC2 19 13 20 14 DC4 21 15 22 16 23 17 24 18 CAN 25 19 26 1A 27 1B ESC 28 1C 29 1D 30 1E 31 1F
!!
Dec Hex Char
32 20 blank 33 21 ! 34 22 " 35 23 # 36 24 $ 37 25 % 38 26 & 39 27 ' 40 28 ( 41 29 ) 42 2A * 43 2B + 44 2C , 45 2D ­46 2E . 47 2F / 48 30 0 49 31 1 50 32 2 51 33 3 52 34 4 53 35 5 54 36 6 55 37 7 56 38 8 57 39 9 58 3A : 59 3B ; 60 3C 61 3D = 62 3E > 63 3F S?
<
Dec Hex Char
64 40 @ 65 41 A 66 42 B 67 43 C 68 44 D 69 45 E 70 46 F
71 47 G
72 48 H
73 49 I 74 4A J 75 4B K 76 4C L 77 4D M 78 4E N 79 4F O 80 50 P 81 51 Q 82 52 R 83 53 S 84 54 T 85 55 U 86 56 V 87 57 W 88 58 X 89 59 Y 90 5A Z 91 5B [ 92 5C \ 93 5D ] 94 5E ^ 95 5F _
Dec Hex Char
96 60 ‘ 97 61 a 98 62 99 63 c
100 64 101 65 e 102 66 f 103 67 g 104 68 h 105 69 i 106 6A j 107 6B k 108 6C l 109 6D m 110 6E n 111 6F o 112 70 p 113 71 q 114 72 r
115 73 s 116 74 117 75 u
118 76 v 119 77 w 120 78 x
121 79 y 122 7A z
123 7B {
124 7C | 125 7D }
126 7E ~
127 7F none
b d
t
A-8
Alternate Character Mode (NLQ)
Dec Hex Char
128
80 none
129
81
none 130 82 131
132
133 134 135 136 137 138 139 140 8C FF
141 142 8E
143
144 145 146 147
148 149 150 151
152 153 154 155 156 9C 157 158 9E 159
none
83
84
85
86 87 88 89
HT
8A
LF
88
VT
8D
CR SO
8F
SI 90 91 92
DC2
93
!!
94
DC4 95 96 97 98 CAN 99 9A 9B
ESC 9D 9F
Dec Hex Char
160
A0
161
A1
162
A2
163
A3
164
A4
165
A5
166
A6
167
A7
168
A8
169
A9
170
AA
171
AB
172
AC
173
AD
174
AE
175
AF
176
B0
177
B1 178 B2 179 B3 180 B4 181
B5 182 B6 183
87 184
B8 185 B9 186
BA 187
BB 188 BC 189
BD 190 BE 191 BF
Dec Hex Char
CO
192
C1
193
C2
194
C3
195
C4
196
C5
197
C6
198
C7
199
C8
200
C9
201
CA
202
CB
203
CC
204
CD
205
CE
206
CF
207
DO
208
D1
209
D2
210
D3
211
D4
212
D5
213
D6
214
D7
215
D8
216
D9
217
DA
218
DB
219
DC
220
DD
221
DE
222 223 DF
Dec Hex Char
224 E0 225 E1 226 E2 227 E3 228 E4
229
E5 230 E6 231 E7 232 E8 233 E9
234 EA 235 EB 236 EC 237 ED 238 EE 239 EF 240 F0 241 F1 242 F2 243 F3 244 F4 245 F5 246 F6 247 F7 248 F8 249 F9 250 FA 251 FB 252 FC 253 FD 254 FE 255 FF none
A-9
Appendix E
Troubleshooting and Advanced Features
This appendix presents explanations of the LX-90’s advanced fea­tures and solutions for possible problems. If you have trouble or want to know more about some of the LX-90 features, consult the appropri­ate section in this appendix.

Installation of Commercial Software Programs

Many commercial software programs require that you specify which printer you are using. Because the LX-90 has many capabilities but is not listed on the menus of many software programs, you may want to experiment a bit to see which choice will be best for your program. A few examples may help.
For WordStar® install the printer as a serial printer and as COM1:
with 1200 baud, no parity, 8 data bits, and 2 stop bits. Also use
WordStar’s install program to remove all codes from the initializa-
tion sequence. Removing the codes from the initialization sequence
allows SelecType to work correctly. Follow the instructions in the
WordStar manual for custom installation, and consult your dealer
if you need more information.
For Artpak™ use the “Set-up of System” operation to select Epson
with Graftrax. Also select the alternate character set with DIP
switch 1 - 6 (see Appendix D) because Artpak uses some of the con­trol codes above 137 decimal.
Even if you are not using either of these programs, the settings for one of them may work for your program. Consult the manual for your software. If you are still not sure, consult your dealer or simply try different options. Remember to try changing DIP switch 1-6 if you do not get the correct results. (See Appendix D.) If the installation program asks whether your printer can backspace, choose non-back­spacing.
E-l

SelecType Features and Solutions

Some software sends a reset code before it begins printing. This can­cels any SelecType settings. If you find that SelecType does not change your printing, the reset code is probably the reason. The solution is to use the installation program for your software to remove all codes from the initialization sequence. See your software manual for details.
If you want to cancel the modes you have set with SelecType, you can turn your printer off and back on with the power switch on the left side of the printer. This cancels all SelecType settings, returns your LX-90 to its defaults, resets the top of page, and empties the contents of the buffer, including any user-defined characters that you have stored there.
Occasionally you may wish to cancel one or more modes with
SelecType instead of resetting the printer with power switch. To cancel all modes controlled by SelecType, simply enter SelecType mode and then press the FF button without pressing the ON LINE button. This is useful when you make a mistake while setting codes and want to start over again, and it does not interfere with top of page, user-defined char­acters, or other items that are not controlled by SelecType.
If you do make a mistake while using SelecType, just press the LF
button to turn off SelecType and then turn it on again and press the
FF button before you press the ON LINE button.
In fact, some users like to use the FF button to cancel any previous
SelecType setting each time they use SelecType. If you want to be absolutely certain that no previous settings interfere with your use of
SelecType, always press the FF button once immediately after you enter SelecType mode. For this procedure, after you press the
ON LINE and FF buttons to turn on SelecType, press the FF button
once, and then make and set your selection or selections as outlined in
Chapter 2.
You can also cancel individual modes with SelecType if you wish. You do this with the same procedure that sets them. When a mode is already set, selecting it again cancels it, as demonstrated in the exam­ple below.
Suppose that you have set emphasized and NLQ Modes and then you decide that you don’t want emphasized. You can either cancel all the modes and reset NLQ, or you can use the following steps to cancel emphasized and leave NLQ.
E-2
1.
See that the ON LINE and READY lights are on. (Be sure that you do not touch the power switch and cancel all the modes.)
2. Press the ON LINE and FF buttons to enter SelecType.
3. Press the ON LINE button twice. (This is the code for empha-
sized.) Notice that the ON LINE light is blinking and that it is on more than it is off. This tells you that the emphasized mode is set.
4.
Press the FF button once. Now the ON LINE light is still blinking, but it is off more than it is on. This tells you that the emphasized mode is cancelled.
5. Press the LF button once to leave SelecType mode.
6.
Press the ON LINE button to put the printer on-line.
Now you have cancelled emphasized without affecting any other
modes.
Some users think that this procedure is too complicated and prefer to cancel all the SelecType settings and then reset the ones they want. Use whichever method you prefer. If you want to cancel modes indi­vidually, remember to watch the ON LINE light. It blinks mainly on
when a mode is set and mainly off when it is not.

Troubleshooting

If the printer freezes and a program will not run, try turning off both the computer and the printer, then turn the printer on first and the computer on second before you try the program again.
If you’re printing labels and a self-adhesive label comes off of the
backing, it may stick behind the platen and cause problems with paper
feeding and irregular darkness of printing. If this happens, take your
LX-90
yourself.
to a qualified service person; do not attempt to remove the label

Beeper Error Warnings

When the is out of paper. The beeper can also be sounded by certain error condi­tions in the printer itself.
LX-90's
beeper sounds, it usually indicates that the printer
E-3
If the printer beeps and stops printing when it is not out of paper, turn the printer off and check to see if the paper is loaded correctly. If the paper is loaded correctly, turn the printer back on and try to print again. If the printer beeps and does not print again, take it to a qualified service person.

Graphics

There are three common sources of problems with graphics pro­grams in BASIC:
1.
Unwanted codes for carriage returns and line feeds may be inserted by BASIC if lines are over 80 columns long or if semicolons are not used at the end of program lines between the graphics command and its data. See Chapter 8 for the proper format for a WIDTH statement and for sample programs that show the proper use of semicolons.
2. Some software will not send certain codes. For example, IBM PC
BASIC will not send CHR$(26). Do not use such codes in graphics programs.
3. If the printer stops during a graphics program, it may not have
received enough data. The printer expects a certain number of pin patterns, determined by n1 and n2 in the graphics command. It will wait patiently until the quota is full. Note that 9-pin Graphics Mode requires two bytes for each column of graphics.

Data Dump Mode

The LX-90 has a special feature that makes it easy for experienced printer users to find the causes of problems. Called the data dump mode, it gives a printout of exactly what codes reach the printer.
Enter this mode by turning on the power switch on the right side of the printer while holding down the FF and LF buttons at the same time. The printer responds by printing the words “Data Dump Mode.” Then, when you run a program, either an applications pro­gram or one you have written in any programming language, the LX-90 prints one or more lines. Each line has three parts: the line num­ber (four digits), the hexadecimal codes (up to 16 numbers), and the guide section (16 characters at the end of each line except the last).
E-4
The hexadecimal numbers are the codes received by the printer, and the guide section helps you find a certain place in the list of codes. Each character in the guide section corresponds to one of the codes. If the code is for a printable character, that character is printed. If the code is
for a non-printable character, such as the ESCape code or the code for a line feed or carriage return, a dot is printed.
Therefore, if you ran the following BASIC program while your LX-90 was in the data dump mode, you would get the printout below it. The printer will print all but the last line and then stop. Press the
ON LINE button to make the printer print the last line.
10 FOR X=70 TO
73
20 LPRINT CHR$(X): NEXT X
30
LPRINT CHR$(27)"E"
40 LPRINT
“Sample text”
50 LPRINT CHR$(27)"@"
You can consult Appendix A to see the meaning of the hexadecimal
codes. The explanation below of the first line will put you on the right
track for using the data dump mode.
The first code in line 0000 is hex 46, which is the same as decimal 70,
which is the code for “F”; therefore “F” is printed in the first position in the guide section. Then, because there is no semicolon in line 20, BASIC sends a carriage return and a line feed, hex codes 0D and 0A. Each of these is represented by a dot in the guide section. The program then sends the hex codes 47, 48, and 49, with each followed by a carriage return and line feed.
When the program gets to line 30, it sends ESCape “E” and a car-
riage return and line feed. These are hex codes 1B, 45, 0D, and 0A, which are represented in the guide section by a dot, an E, and two more dots. Now you can follow a data dump printout on your own.
E-5
Some software changes one or more codes when sending them to
the printer. The ability of the LX-90 to dump in hexadecimal lets you
determine which codes are creating problems for your system.
A data dump printout of a program shows you exactly what the
printer is receiving, regardless of what the computer is sending. The following test program lets you check to see what codes, if any, are problems for your software. This program is in BASIC; use an equiv-
alent program for another programming language.
10 FOR X=0 TO 255 20 LPRINT CHR$(X);
30
NEXT X
Put the printer in data dump mode and then RUN the program. Remember to press the ON LINE button to make the LX-90 print the final line. Then compare your printout with the list of hex codes in order in Appendix A. If any are skipped or repeated, you will know that your software changes some codes before it sends them to the printer.
For example, in the lines below, which are the first two lines of the printout of the test program run with IBM PC BASIC, you can see that in this case BASIC adds hex 0A, which is the code for line feed, after hex 0D, the code for a carriage return. You will also notice that the program does not send hex characteristics are discussed in the next section.
1A,
which is decimal 26. Both of these
The data dumping capability can help you debug a program
quickly. Appendix A will help you translate the hex codes to ASCII equivalents.

IBM PC BASIC Solutions

There are three problems in using the IBM Personal Computer BASIC to drive a printer. First, the IBM PC BASIC inserts a carriage-
return/line-feed (CR-LF) after each 80 characters you send it. Second, it adds an LF to each CR in an LPRINT statement. Third, it will not
send hex
E-6
1A
(decimal 26).
Here is the way to adjust the width when it is the only problem. Tell the computer that the print line is wider than 80 characters with this WIDTH statement:
WIDTH "LPT1:",255
The 255 is a special number that prevents the computer system from inserting a CR-LF into the line. Unless, of course, there’s one in your program.
The extra line feed-CHR$(10)-that accompanies each carriage return-CHR$(13)-is no problem except when you need to use CHR$(13) in a graphics program. Getting rid of the extra CHR$(10) is rather complicated. First you open the printer as a random file:
OPEN "LPT1:" AS #l
Although this allows you to send any code to the printer, you can no longer use the LPRINT command. Instead, you must use a PRINT #1 command:
PRINT #1, "Now I can print anything"
This does allow you to print anything, but it ignores any previous WIDTH statements.
If you want to print more than 80 columns per line in a graphics program, you must therefore change your opening statement to include the appropriate WIDTH statement:
OPEN "LPT1:" AS #1 : WIDTH #1, 255
And for the programs in this manual, don’t forget to use PRINT #1 instead of LPRINT.
There is no easy solution to the problem with CHR$(26). It is best to change any instance of decimal 26 (hex 1A) in your programs to another number.
E-7
Appendix B
Control Codes in Numeric Order
Different programs use different methods to send these control codes to your LX-90. If you use BASIC, you send a control code using LPRINT CHR$(27) followed by CHR$(n), where n is a number from the decimal (Dec) column below. For a few codes, those with a dash in the ESC column, you omit the ESCape code. For the codes above decimal 27, you can use either the character in the symbol column (in quotation marks) or CHR$(n). For example, the command for turning on emphasized can be entered as:
LPRINT CHR$(27)CHR$(69) or LPRINT CHR§(27)“E”
Some applications programs can use control key codes for decimal codes O-27. See the control key chart at the end of this appendix for a complete list of control key values.
Abbreviations: cpi = characters per inch
cps = characters per second
ESC Dec Hex Symbol Function
0 00 NUL
9 09 HT
10 0A LF
11
0B VT
12 0C FF
Terminates horizontal and vertical tab setting ESCape sequences.
Horizontal tab. Empties the printer buffer, then
moves the print head to the next tab stop.
Default setting is every eight spaces. Line feed. Empties the printer buffer, performs
a line feed at the current line spacing, and
resets the buffer character count to 0.
Vertical tab. Empties the printer buffer, then advances the paper to the next vertical tab stop.
Form feed. Empties the printer buffer, then advances the paper to the next top of form.
B-l
13 0D
CR
Carriage return. Prints the contents of the
buffer and resets the buffer character count to
0.
ESC
14 0E
15 OF
18 12
20
14
24
18
25
19
SO
SI
DC2
DC4
CAN
EM
Shift out. Turns expanded mode ON for the length of the line. Can be cancelled by ASCII 20
or ESC “W0”. Works with pica, elite, or com-
pressed mode. Shift in. Empties the buffer and turns com-
pressed mode (17.16 cpi) ON. Cannot work
with emphasized or pica mode. Can also be set
with DIP switch l-l. Device control 2. Turns compressed mode
OFF
Device control 4. Turns the expanded mode set
by ASCII 14 OFF Cancels all text but not control codes in the
print buffer. Sets the optional cut-sheet feeder. Format:
ESC 25 n where n toggles the cut-sheet feeder on and off: 0 turns it OFF and 4 turns it ON. You cannot use “EM” in place of 25 for this command. Can also be turned ON and OFF with DIP switch
1-3.
27 1B
ESC 33 21
ESC 37 25
B-2
ESC
%
ESCape. Prepares the printer to receive con­trol codes.
Master Select. Selects 1 of 48 unique print
mode combinations. Format:
ESC “!"
n
where n stands for a number between 0 and
255. See Chapter 5 for details. Activates user-defined character set.
ESC "%" 0 0
selects the ROM set, and
ESC "%" 1 0
selects the RAM set defined by ESC "&"
ESC 38 26 &
Defines user characters in RAM. Format:
ESC “&” 0 c1 c2 a d1 . . . d11 The 0 is for future use, cl is the starting char­acter, c2 is the ending character. Both cl and c2 must be between 58 and 63 inclusive. If a> = 128, character uses top 8 pins; if a< 128
character uses bottom 8 pins. Each character in the range c1 - c2 requires an attribute byte
(a)
and 11 data bytes (d1 - d11).
If NLQ mode is selected first, the command requires 3 bytes for a. The first, a0, is ignored,
the second, a1, is the printing width and values
above 12 are ignored. The third, a2, is the value of the right spacing and is automatically adjusted to 12-a1. In NLQ the command also requires
3xa1
data bytes.
ESC 42 2A *
ESC 45 2D -
ESC
48
30
ESC
49
31
ESC
50
32
ESC
51
33
Turns graphics mode ON. Format:
"*" m nl n2
ESC
followed by n data numbers, where
n
= total number of dot columns,
n1
= n MOD 256,
n2
= INT(n/256)
m selects mode 0 - 6.
See Chapter 8 for modes. Turns underline mode ON. Format:
ESC “-” where n toggles underline on and off: 0 turns it OFF, 1 turns it ON.
0
1
2
3
Sets line spacing to 1/9-inch. Sets line spacing to 1/9-inch. Returns line spacing to the default of 1/6-inch. Sets line spacing to n/216-inch (l/216-inch is
1/3 dot). Stays on until changed. Format:
ESC “3”
where
n = O-255.
n
n
B-3
ESC
53
ESC
54
ESC
55
ESC
56
ESC 57
35
36
37
38
39
5
6
7
8
9
ESCape “5” 1 causes the LX-90 to perform an automatic line feed with each carriage return. ESCape “5” 0 cancels ESCape “5” 1.
Selects standard character set if alternate character set has been previously selected. See Appendix A for character set tables.
Selects alternate character set. See Appendix
A for character set tables.
Disables the paper-out sensor. Can also be dis-
abled with DIP switch 1-5. Enables the paper-out sensor. Can also be
enabled with DIP switch 1-5.
ESC 60 3C <
3A
ESC
58
ESC 63 3F ?
ESC 64 40 @
ESC 65 41 A
:
Turns one-line unidirectional mode ON. Prints
each line from left to right. Copies the ROM character set to RAM. For-
mat:
ESC “:” where n1, n2, and n3 are all 0. They are included for future expansion. The RAM char­acter set must be activated with ESC “%".
Redefines one of the four alternate graphics codes-“K”,“L”,“Y”, or “Z’‘-as one of the seven graphics density numbers used with the ESCape
where s is K,L,Y, or Z and n is 0 - 6.
Reset Code, which resets the printer to its power-up state, including resetting top of page.
Clears all text and control codes from the print
buffer. Sets line spacing to
where
“*” command. Format:
n = O-255.
n1 n2 n3
ESC “?s” n
n/72
inch (n-dot). Format:
ESC “A”
n
B-4
ESC 66 42 B
Sets up to 16 vertical tabs in the current line spacing. Tab settings are not affected by sub­sequent changes in line spacing. Format:
ESC “B”
n1 n2 ... nk O
where nk = 1 - 255. Terminate this tab sequence with 0 or a number less than the last defined tab
(nk).
ESC 67 43 C
ESC 67 43 CO
ESC 68 44 D
ESC
69 45
E
Sets the form length ton lines in the current line spacing. The default line is 66 lines. Also resets top of form. Format:
ESC “C”
where n = l-127. Sets the form length to n inches, regardless of
the current line spacing. The default is 11 inches. Also resets top of form. Format:
ESC “C” 0
where
n =
1 - 22.
Resets the current tabs and sets up to 32 hori­zontal tabs in the current pitch. Tabs may range up to the maximum width for the character and printer size. For example, the maximum tab for pica characters on an 8-inch line is 79. Tab set­tings are not affected by subsequent changes in pitch. Format:
ESC “D” Terminate this tab sequence with 0 or a number less than the last defined tab
Turns emphasized mode ON. Cannot mix with elite or compressed modes.
n1 n2 ... nk O
n
n
(nk).
ESC ESC
ESC
70 71
72
46 47
48
F
G
H
Turns emphasized mode OFF. Turns double-strike mode ON. Cannot mix with
NLQ. Turns double-strike mode OFF:
B-5
ESC 74 4A J
Forces an immediate line feed of
without changing the current line spacing.
Prints the contents of the buffer without a car­riage return. Format:
ESC “J”
where
n = O-255.
n
n/216
inches
ESC 75 4B K
ESC 76 4C L
ESC 77 4D M
ESC 78 4E N
Turns single-density graphics mode ON. Prints
480 dots per 8-inch line. Format:
ESC “K”
followed by n data numbers, where
n
= total number of dot columns,
n1 = n n2 =
For example, to print 480 dots, n1 = 244,
n2 = 1.
Turns low-speed double-density graphics mode ON. Prints 960 dots per 8-inch line. Format: ESC “C” where
n n1 = n n2 =
For example, to print 960 dots, n1 = 192,
n2 = 3.
Turns elite mode (12 cpi) ON. Cannot mix with NLQ, pica, or emphasized.
Sets skip over perforation to n lines. Format:
where n = 1 - 127.
MOD 256,
INT
(n/256).
n1 n2
= total number of dot columns,
MOD 256,
INT
(n/256).
n1 n2
followed by n data numbers,
ESC “N”
n
ESC 79 4F 0 ESC 80 50 P
B-6
Turns skip over perforation OFF Turns elite mode OFF Returns to pica unless
compressed mode is active.
ESC 81 51 Q
Sets the right margin. Also cancels all text that
is in the print buffer. Format:
ESC “Q”
n
where n ranges from:
2 - 80 in pica
3 - 96 in elite* 4 - 137 in compressed* 4 - 160 in compressed elite*
* You may need a WIDTH statement. ESC 82 52 R ESC 83 53 S
Returns tabs to default setting.
Turns subscript or superscript mode ON. Either type of script is printed in double-strike. For-
mat:
ESC”S”CHR$(n) where n = 0 produces superscript, and 1 pro­duces subscript.
ESC 84 54 T ESC 85 55 U
Turns script mode OFF Turns unidirectional mode ON. Prints each line
from left to right. Format:
ESC “U”
n
where n toggles the mode on and off: 0 turns it
OFF, 1 turns it ON.
ESC 87 57 W Turns expanded mode ON; stays ON until
turned OFF Cannot be turned off with ASCII 20.
Format:
ESC “W”
n
where n toggles the mode on and off: 0 turns it
OFF 1 turns it ON.
ESC 89 59 Y
Turns high-speed double-density graphics
mode ON; gives the same density as ESC “C” but cannot print two adjacent dots in the same row.
B-7
ESC 90 5A Z
Turns quadruple-density graphics mode ON.
Prints 1920 dots per 8-inch line. Format:
ESC “Z”
followed by n data numbers, where
n
= total number of dot columns,
n1
= n MOD 256
n2 =
INT
(n/256).
For example, to print 1920 dots, n1 = 128,
n2 = 7.
n1 n2
ESC 94 5E ^
ESC 97 61 a
ESC 108 6C I
Turns nine-pin graphics ON. Format:
"A" d n1 n2
ESC
followed by 2 times n data numbers, where
n
= total number of dot columns,
n1 = n n2 =
The printer expects 2 data numbers for each column of print. The d selects the density, where 0 produces single-density and 1 pro duces double-density
Sets justification format in NLQ mode. Format:
where n = 0 for left justification; tering; n = 2 for right justification; and
auto justification (justificiation on both sides).
Sets the left margin. Format:
where n ranges from:
0 - 78 in pica
0 - 93 in elite 0 - 133 in compressed
0 - 156 in compressed elite
MOD 256,
INT
(n/256).
ESC “a”
ESC “I”
(n)
n
n =
1 for cen-
n = 3
for
ESC 115 73 s
ESC 120 78 x
B-8
Selects the print speed. Half-speed mode can be employed to reduce noise. Format:
ESC “s”
where n toggles half-speed on and off, so that 1
produces 50 cps, while 0 produces 100 cps. Selects draft or NLQ mode. ESC “x” 0 selects
draft. ESC “x” 1 selects NLQ. ESC “x0” and ESC “x1” will also work.
n

Control Key Chart

Some applications programs can use control key codes for decimal values key column indicates that you press the control key at the same time you press the key for the letter or symbol in that column. For example, you press the control key and A at the same time to send the value 1.
O-27.
The table below gives you the proper values. The Control
Some programs that use this system cannot use control-@.
Decimal Hexadecimal Control key
10 11 12 13 14 15 16 17 18 19 20 21
22 23 24 25 26 27
0
2 3 4 5 6 7 8 9
00
01 02 03 04 05 06 07 08
09 0A 0B 0C 0D
0E
0F
10 11 12 13 14 15 16 17 18 19 1A
1B
@
A
B C D
E F
G
H
K
L
M
N
O
P
Q
R S T U V
W
X Y Z
[
B-9
Appendix C
Control Codes by Function
This appendix shows the control codes that are in Appendix B, but
this time they are arranged by categories.
This appendix enables you to find a particular code quickly but does not give all the details on the format and use of each code. See Appendix B or the appropriate chapter for further information.

Near Letter Quality Mode

ESC “x” 1 ESC “x” ESC “a”

Character Width (Pitch)

ASCII 15 ASCII 18 ASCII ASCII ESC "M” ESC “P" ESC "WO” Turns either expanded mode OFF. ESC
"W1”
Turns NLQ mode ON. Turns draft mode ON.
0
Activates NLQ justification modes.
Turns compressed mode ON. Turns compressed mode OFF. Turns one-line expanded mode ON.
14
Turns one-line expanded mode OFF.
20
Turns elite mode ON. Turns elite mode OFE
Turns continuous expanded mode ON.

Character Weight

ESC “E” Turns emphasized mode ON. ESC “F” Turns emphasized mode OFF. ESC “G” ESC “H” Turns double-strike mode OFE
Turns double-strike mode ON.
C-l

Print Enhancement

ESC
“SO”
ESC “S1”
ESC ‘7” ESC “-0” ESC “-1”
Turns superscript mode ON.
Turns subscript mode ON. Turns either script mode OFF. Turns underline mode OFF. Turns underline mode ON.

Mode and Character-Set Selection

ESC “!” n Master select. ESC “6” ESC “7” ESC "@”
Returns to standard character mode. Selects alternate character mode. Reset code.

Special Printer Features

ESC 25 ESC “5” ESC "<“ ESC “U0” ESC “U1” ESC
“so”
ESC “s1”
Enables and disables the optional cut-sheet feeder.
Selects or cancels automatic line feed. Turns one-line unidirectional mode ON. Turns continuous unidirectional mode OFE Turns continuous unidirectional mode ON. Returns to normal speed.
Turns half-speed mode ON.

Line Spacing

ESC “0” Sets line spacing to 1/9-inch. ESC “1” Sets line spacing to 1/9-inch. ESC “2” ESC “3“ n
ESC “A” n Sets line spacing to n/72-inch. ESC “J” n
c-2
Sets line spacing to 1/6-inch (default).
Sets line spacing to n/216-inch.
Produces an immediate one-time line feed of n/216-
inch without a carriage return.

Forms Control

ESC “8”
ESC “9” ESC “C” 0 Sets the form length in inches. ESC “C” ESC “N” n Turns variable skip over perforation ON. ESC “0”
Turns the paper-out sensor OFF. Turns the paper-out sensor ON.
Sets the form length in lines. Turns skip over perforation OFF.

Page Format

ASCII 9 ASCII 10 Line feed. ASCII 11 Vertical tab. ASCII 12 Form feed. ASCII 13 Carriage return. ESC “D”
ESC “Q” n Sets the right margin. ESC "1” n Sets the left margin.
Horizontal tab.
Sets horizontal tab stops.

User-Defined Characters

ESC “&“ ESC “:” ESC “%”
Defines characters in user RAM. Copies the character set from ROM to RAM. Activates ROM or RAM character set.

Dot Graphics

ESC "*” ESC “?”
ESC “K” ESC "L” ESC “Y” ESC “Z”
ESC “A"
Selects one of seven graphics densities. Reassigns a graphics density. Turns single-density graphics mode ON. Turns double-density graphics mode ON. Turns high-speed double-density graphics mode ON. Turns quadruple-density graphics mode ON. Turns nine-pin graphics mode ON.
c-3
Appendix D
The DIP Switches
Several tiny switches called DIP (for Dual In-Line Package) switches are in the back of your LX-90 printer. These switches control a number of important printer functions. Although the factory set-
tings are the best for most uses, you may want to change some of them.
The design of the LX-90 gives you easy access to the switches, which you can locate using Figure D-l.
Figure D-1. DIP switch location
D-l
Always turn the power OFF (with the switch on the right side of the printer) before you change the setting of any of these switches. Any changes made while the power is on will be ignored until you turn the printer off and back on. So set all switches with the power off.
Table
D-l
shows you the functions of all the switches, and the rest
of the appendix explains each of them.
Table D-l. DIP switch functions
Switch 1
No. ON
1-1 Compressed
1-2 NLQ
1-3 Active
1-4 12 inches l-5 Inactive 1-6 Alternate 1-7
l-8
Function
Print mode Print mode Cut-sheet feeder
Page length
Paper end detector
Character set selection
Baud rate selection
See Table D-2
OFF
Pica Draft
I Inactive
11 inches Active Standard
I
I
Switch 2
No. ON
2-1 0 (slashed) 2-2 2-3 CR + LF 2-4 Mute
Note:
The factory setting of all these switches is OFF.
Function
Zero character
Not used (Automatic line feed Beeper
OFF
0
CR only Active
Switch 1-1 selects pica or condensed printing. ON is condensed; OFF is pica. Regardless of the setting, you can still select condensed with SelecType and either condensed or pica with ESCape codes.
Switch 7-2 selects draft or Near Letter Quality. When it is ON, the printer prints in the NLQ mode. When it is OFF, it prints in the draft mode. If the switch is off, you can still select the NLQ mode with
SelecType or an ESCape code.
Switch 1-3 controls the optional cut-sheet feeder. When it is ON, the cut-sheet feeder is enabled. When it is OFF, the cut-sheet feeder is dis­abled.
Switch
7-4
selects the paper length. When it is OFF, the length is
11”;
when it is ON, the length is 12”.
D-2
Switch 1-5 controls the paper-end detector. When it is ON, the detec­tor is inactive, causing printing to continue even when the printer is out of paper. When it is OFF, the printer stops when the end of the paper passes the paper-end detector. See Paper Out Sensor in Chapter
6.
Switch
acter set is used, when it is ON, the alternate character set is used. See Appendix A for listings of both character sets. Notice that the alter­nate character set has some control codes between mal). If a software program prints a character instead of performing a printer function, such as a line feed, try selecting the alternate charac­ter set.
Switch Z-7 and 1-8 select the baud rate as shown in Table D-2.
Many software programs require a baud rate of 1200, but a higher
baud rate may increase the speed of other programs. The software documentation or experimentation should be your guide to the best baud rate for each program.
1-6
selects the character set. When it is OFF, the standard char-
137
and
152
(deci-
Table D-2
Switch 2-1 controls the printing of zeroes. When it is ON, the zeroes
are slashed (0); when it is OFF they are not.
Switch 2-2 is not used. It must remain OFF. Switch 2-3 controls line feeds. When it is ON, the LX-90 adds an auto-
matic line feed to each carriage return; when it is OFF it does not. If your printing has an extra space between lines, turn the switch OFF. If all the lines of your printing are on top of each other, turn the switch ON.
Switch
the beeper cannot sound.
2-4
enables the beeper to sound when it is OFF; when it is ON,
D-3

INDEX

A
Alternate character mode, Al, A6-A9, D3 American Standard Code for Information Interchange. See ASCII
Applications programs. See Commercial software Artpak, El ASCII (American Standard Code for Information Interchange), 16
codes listed for all characters, Al-A9
Automatic test. See Test pattern
Automatic line feed, D3
B
BASIC programs, how to run, 18 BASIC, IBM PC, E6-E7 Baud rate, D3, El Beeper, D3, E3-E4 Bold modes. See Double-strike; Emphasized
C
Cancelling codes, 20-22 Changing pitches, 14 Characters printed by the LX-90, Al-A9 CHR$, 16 CHR$(27). See ESCape code Codes. See ASCII codes; Control codes; ESCape code;
cancelling, 20, E2-E3
Commercial software, 6, 9, 45-46
installation, El
Compressed mode, 14, 19-22, D2
Can also be set with SelecType or a DIP switch
compressed elite, 21 Computer-printer connection, 4 Control codes
data dumping in hexadecimal, E4-E6
listed by function, Cl-C3
listed by number, B1-B8
See also specific modes and functions Control Key Chart, B9 Control panel, 3-6
Selecting typestyles with. See SelecType Cut-sheet feeder option, D-2
F-l
D
Data dump mode, E4-E6 Default settings, 20 DIP switches, Dl-D3 Dot graphics. See Graphics Dot matrix printing, 13-15 Double-strike mode, 24, 27
Can also be set with SelecType Draft mode, 3, 15, D2 Dumping data in hexadecimal, E4-E6
E
Elite mode, 14-15, 19-22
Can also be set with SelecType
Emphasized mode, 23-28
Can also be set with SelecType
ESCape code, 16
listed by function, C1-C3 listed by number, B1-B8
Expanded mode, 25-27
F
FF (form feed), 6, E2-E3 Formatting, page, 29-32 Function switches. See DIP switches
G
Graphics, 45-58
designing your own, 54-57 nine-pin, 52, E4 pin labels, 48-49 reassigning code, 53 summary table, 52 troubleshooting, E4
WIDTH statements, 50
H
Head. See Print head Hex dumping. See Data dump mode
F-2
I
IBM Personal Computer BASIC, E6 Installation. See Set-up operations; Commercial software Interface. See PIC
I
Justification with NLQ, 31-32
L
Left margin. See Margins Length of page. See Page LE, 6, E2-E3
See also Control panel, Line feed
Line feed, 30
automatic, DIP switch setting for,
Line spacing, 30-31
in graphics, 47
Listing programs, 6 LPRINT 16
Margins, 29-32 Master Select, 27-28 Matrix. See Dot matrix
D3
M
N
Near Letter Quality (NLQ) mode, 15, 21-22, 24, A4-AS, A8-A9
Can also be set with SelecType or a DIP switch Justification, 31 Test pattern, 3-4 User-Defined Characters,
Nine-pin graphics. See Graphics
NLQ. See Near Letter Quality
0
ON LINE light and button, 5, E2-E3.
See also SelecType
F-3
P
Page, top of, 21 Page formatting. See formatting Panel buttons, selecting typestyles with. See SelecType Paper length, D2 Paper-out light, 5 Paper-out sensor, 31
DIP switch control of, D3 Perforation. See Skip over perforation PIC. See Printer Interface Cartridge Pica mode, 14-15, 19-22 Pins, numbering of, 48 Pitch comparison table, 22
See also Pica; Elite; Compressed Power light, 5 Preparation. See Set-up operations Print head, 13
and dot graphics, 46-47
Print mode combinations, 25-28 Print pitch summary table, 22 Printer Interface Cartridge (PIG), 3-4 Program listings, 6
R
Ready light, 5 Reset code, 20
with user-defined characters, 39
Resetting the printer, 20-21 Right margin. See Margins
F-4
S
SelecType feature, 7-12
cancelling functions with, E2-E3
troubleshooting, E2-E3 Self test. See Test pattern Set-up operations for printer, 3-6 Single-sheet printing, 31 Skip over perforation, 30 Spacing. See line spacing Spreadsheets. See commercial software String variables in graphics, 57-58 Subscript mode, 28 Superscript mode, 28 Switches. See DIP switches
T
Tabs, C3 Test pattern, 3-4 Top of page, E2 Troubleshooting, El-E7
U
Underline mode, 26-28 Unidirectional mode, B7 User-defined characters, 33-44
w
WIDTH statements, E7 WordStar, El Word processors. See commercial software
Z
Zero, slashed, D3
F-S
EPSON AMERICA, INC.
LIMITED WARRANTY
Epson America, Inc. hereby warrants that it will repair or replace, at its option, any part of the Epson product with which this warranty is enclosed which proves defective by reason of improper workmanship and/or material, without charge for parts or labor, for a period of one original purchase by the buyer other than for purposes of resale, and this warranty applies only if such original purchase by the buyer was made in the United States.
To obtain service under this warranty you must return your Epson product, prop­erly packaged in its original container or an equivalent, to the nearest authorized Epson Service Center or the Dealer from whom the product was purchased. Any postage, insurance and shipping costs incurred in presenting or sending your Epson product for service are your responsibility.
The Dealer’s original bill of sale or other satisfactory proof of the date of the origi­nal buyer purchase of your Epson product must be made available to obtain service under this warranty.
This warranty applies only if your Epson product fails to function properly under normal use and within the manufacturer’s specifications. Batteries, as well as optional software packages (ROMs) not contained in the original container of your Epson product, are excluded from coverage under this warranty. This warranty does not apply if the Epson label or logo, or the rating label or serial number, has been removed from your Epson product, or if, in the sole opinion of Epson, your Epson product has been damaged by faulty or leaking batteries not supplied by Epson, or by accident, misuse, neglect, or improper packing, shipping, modification or servicing, by other than Epson or an authorized Epson Service Center.
SOME EPSON PRODUCTS HAVE A COMPARTMENT CONTAINING STATIC-SENSITIVE ELECTRONIC CIRCUITRY. THIS COMPARTMENT IS CLEARLY LABELED. DO NOT OPEN IT! THIS WARRANTY WILL BECOME VOID IF YOU ATTEMPT TO MODIFY OR ADJUST ANY ROM OR OTHER PART OR DEVICE IN SUCH A COMPARTMENT, OR IF YOU ATTEMPT TO ADD OR INSERT ANY ROM OR OTHER PART OR DEVICE. IF ANY OF THESE STEPS IS REQUIRED, BRING YOUR EPSON PRODUCT TO AN AUTHORIZED EPSON DEALER.
THE DURATION OF ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR OTHERWISE, ON YOUR EPSON PRODUCT SHALL BE LIMITED TO THE DURATION OF THE EXPRESS WAR­RANTY SET FORTH ABOVE. IN NO EVENT SHALL EPSON AMERICA, INC. OR ITS AFFILIATES BE LIABLE FOR ANY LOSS, INCONVENIENCE OR DAMAGE WHETHER DIRECT, INCIDENTAL, CONSEQUENTIAL OR OTHERWISE, OR WHETHER CAUSED BY NEGLIGENCE OR OTHER FAULT RESULTING FROM BREACH OF ANY EXPRESS OR IMPLIED WARRANTY OF MERCHANTABIL­ITY, FITNESS FOR A PARTICULAR PURPOSE, OR OTHERWISE, WITH RE­SPECT TO YOUR EPSON PRODUCT, EXCEPT AS SET FORTH HEREIN. SOME STATES DO NOT ALLOW LIMITATIONS ON HOW LONG AN IMPLIED WAR­RANTY LASTS AND SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THE ABOVE LIMITATIONS AND EXCLUSIONS MAY NOT APPLY TO YOU.
You may request information on how to obtain service under this warranty by contacting the Dealer from whom your Epson product was purchased, or by contact­ing Epson America, Inc. at the address printed below:
This warranty gives you specific legal rights, and you may also have other rights which vary from state to state.
(1)
year. This warranty period commences on the date of
Epson America, Inc.
Service Division
23155
Kashiwa Court
Torrance, CA
(213) 534-0360
90505
Loading...