Printek Printer 4300 User Manual

FormsPro 4300  
FormsPro 4500  
FormsPro 4503  
Serial Matrix Printers  
Copyright Ó 1994  
by  
Printek, Inc.  
1517 Townline Road  
Benton Harbor, MI 49022  
616-925-3200  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM and Proprinter are registered trademarks of International Business Machines  
Corporation, DEC is a registered trademark of Digital Equipment Corporation, Epson  
is a registered trademark of Seiko Epson, Printek and FormsPro are registered  
trademarks of Printek, Inc.  
iii  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Specifications subject to change without notice.  
iv  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Table of Contents  
TABLE OF CONTENTS  
Acknowledgments  
iii  
CHAPTER 1 - INTRODUCTION  
How to Use This Manual  
1- 1  
1- 1  
1- 2  
1- 3  
1- 3  
Printer Model Descriptions and Key Features  
Selecting Emulations  
Changing Forms/Tractor Paths  
CHAPTER 2 - ANSI X3.64 EMULATION  
Introduction  
2- 1  
2- 1  
2- 3  
2- 3  
2- 4  
2- 5  
2- 6  
2- 7  
2- 9  
2- 9  
2-10  
2-12  
2-13  
2-14  
2-15  
Control Codes and Escape Sequences Grouped by Function  
Communications  
Character Size and Line Spacing  
Character Attributes  
Horizontal Position  
Vertical Position  
Horizontal and Vertical Position  
Form Length and Form Feed  
Horizontal Tabs  
Vertical Tabs  
Printer Controls  
Emulations  
Control Codes and Escape Sequences (Alphabetical)  
CHAPTER 3 - EPSON FX EMULATION  
Introduction  
3- 1  
3- 1  
3- 3  
3- 3  
3- 5  
3- 8  
3-10  
3-14  
3-15  
3-16  
3-17  
3-19  
3-21  
3-22  
3-23  
3-24  
3-27  
3-28  
3-29  
3-30  
Control Codes and Escape Sequences  
Communications  
Character Size  
Character Attributes  
Character Sets  
Line Pitch  
Horizontal Position  
Vertical Position  
Form Length and Form Feed  
Horizontal Tabs  
Vertical Tabs  
Horizontal Margins  
Vertical Margins  
Graphics  
Printer Controls  
Forms and Tractors  
Emulations  
Control Codes and Escape Sequences (Alphabetical)  
iii  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Table of Contents  
CHAPTER 4 - IBM PROPRINTER EMULATION  
Introduction  
4- 1  
4- 1  
4- 3  
4- 3  
4- 4  
4- 7  
4- 8  
4- 9  
4-11  
4-11  
4-12  
4-14  
4-15  
4-15  
4-17  
4-18  
4-19  
4-21  
4-22  
4-23  
Control Codes and Escape Sequences  
Communications  
Character Size  
Character Attributes  
Character Sets  
Line Pitch  
Horizontal Position  
Vertical Position  
Form Length and Form Feed  
Horizontal Tabs  
Vertical Tabs  
Horizontal and Vertical Tabs  
Horizontal Margins  
Vertical Margins  
Graphics  
Printer Controls  
Emulations  
Control Codes and Escape Sequences (Alphabetical)  
CHAPTER 5 - DEC LA120 EMULATION  
Introduction  
5- 1  
5- 1  
5- 3  
5- 3  
5- 4  
5- 5  
5- 6  
5- 7  
5- 8  
5- 9  
5-10  
5-11  
5-12  
5-14  
5-16  
5-17  
5-18  
5-19  
5-20  
Control Codes and Escape Sequences  
Communications  
Character Size  
Character Attributes  
Character Sets  
Line Pitch  
Horizontal Position  
Vertical Position  
Horizontal and Vertical Position  
Form Length and Form Feed  
Horizontal Tabs  
Vertical Tabs  
Horizontal Margins  
Vertical Margins  
Printer Controls  
Emulations  
Control Codes and Escape Sequences (Alphabetical)  
CHAPTER 6 - SIMPLE TTY EMULATION  
Introduction  
6- 1  
6- 1  
6- 2  
6- 2  
6- 2  
6- 3  
6- 3  
6- 4  
6- 4  
6- 4  
6- 5  
6- 6  
Control Codes and Escape Sequences  
Communications  
Horizontal Position  
Vertical Position  
Form Length and Form Feed  
Horizontal Tabs  
Vertical Tabs  
Printer Controls  
Emulations  
Control Codes and Escape Sequences (Alphabetical)  
iv  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Table of Contents  
7- 1  
CHAPTER 7 - PRINTEK EMULATION  
Introduction  
7- 1  
7- 3  
7- 3  
7- 4  
7- 5  
7- 6  
7- 7  
7- 8  
7- 8  
7- 9  
7-10  
7-11  
7-12  
7-12  
7-13  
7-14  
7-17  
7-19  
7-20  
7-21  
Control Codes and Escape Sequences  
Communications  
Character Size  
Character Attributes  
Character Sets  
Line Pitch  
Horizontal Position  
Vertical Position  
Form Length and Form Feed  
Horizontal Tabs  
Vertical Tabs  
Horizontal and Vertical Tabs  
Horizontal Margins  
Vertical Margins  
Graphics  
Printer Controls  
Forms and Tractors  
Emulations  
Control Codes and Escape Sequences (Alphabetical)  
CHAPTER 8 - HEX DUMP MODE  
8- 1  
APPENDIX A - OPTIONAL COAXIAL/TWINAXIAL INTERFACE  
1
Introduction  
A- 1  
A- 1  
A- 2  
Automatic Port Switching  
Command Interpreter  
APPENDIX B – Printing Basic BAR CODEs  
Introduction  
B- 1  
B- 1  
B- 4  
B- 4  
B- 5  
B- 5  
B- 5  
B- 6  
B- 9  
B-10  
B-10  
B-11  
B-12  
B-13  
Bar Code Sequences  
Measurements in Bar Code Mode  
Entering/Exiting Bar Code Mode  
The Bar Code Control Character  
Other Control Characters  
Bar Code Definition  
Bar Code Height  
Relative Vertical Tab  
Absolute Horizontal Tab  
Bar Code Pass Terminator  
Mixing Bar Codes and Text  
Supported Bar Code Types  
APPENDIX C - ASCII CHARACTER TABLES  
ASCII Control Code Definitions  
C- 1  
C- 1  
C- 7  
Decimal to Octal to Hexadecimal Conversion Table  
APPENDIX D - PRINTER RESET CONDITIONS  
GLOSSARY  
D- 1  
Glossary- 1  
v
Download from Www.Somanuals.com. All Manuals Search And Download.  
Download from Www.Somanuals.com. All Manuals Search And Download.  
CHAPTER 1 - INTRODUCTION  
This manual describes the software interfaces supported by your FormsPro 4000  
series printer. It is written for a programmer who will be developing software for the  
printer, and contains information not normally needed by a printer operator/user.  
Basic information on printer operation (setting the printer up, loading paper, replacing  
ribbons, etc.) can be found in the "Operator's Manual" that accompanied your printer.  
How to Use This Manual  
Below is a brief description of the information contained in this manual.  
Chapter 1  
Introduction  
Describes the contents of this manual. Also provides you with an introduction to the  
capabilities and operation of the FormsPro 4300. FormsPro 4500, and FormsPro 4503  
printers.  
Chapters 2 through 7  
Emulations  
Describe the software interface when using ANSI X3.64, Epson FX, IBM Proprinter,  
DEC LA120, Simple TTY, or Printek emulation mode.  
Each of these chapters is designed as a stand-alone chapter, capable of providing all  
the information necessary to write software for a particular emulation. You may want  
to read the chapter for the emulation(s) you are using, and skip the others.  
Chapter 8  
Hex Dump Mode  
Describes the output of hex dump mode, and how it may be used to debug software  
problems.  
Appendices  
Following the above chapters are appendices containing ASCII character tables and  
font samples, additional control panel features, how to use the basic bar coding  
support, printer specifications, and detailed interface specifications for the optional  
interfaces.  
Glossary  
For your convenience a glossary of printer related terms may be found in the rear of  
the manual.  
Page 1-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Introduction  
Printer Model Descriptions and Key Features  
The Printek FormsPro 4000 Series Printers are high speed, heavy duty serial dot  
matrix printers designed especially for printing upon hard to print forms which are  
often not printed adequately by other printers. Of course, the FormsPro 4000 series  
printers will also print on lighter forms.  
All printers provide straight paper paths for jam free paper motion and a zero waste  
tear bar for demand document applications.  
The operator may permanently record up to ten complete sets of form parameters  
which may be later selected either at the printer's control panel or from the host  
computer. The FormsPro 4503 provides three sets of tractors, any of which can be  
included in the form parameters for a particular form. This allows the printer to  
automatically unload one form and load another when selected, without requiring the  
operator to touch the paper.  
The printers come equipped with an industry standard parallel interface and an RS-  
232C serial interface. The printers may optionally be ordered with an RS-422 serial  
interface, or a coaxial/twinaxial interface which emulates an IBM 3287 printer or an  
IBM 4214, 5225, or 5256 printer.  
Other options include a 32K buffer which increases the standard 4K character input  
buffer to 28K characters, and internal bar code support which also includes the  
optional OCR-A and OCR-B fonts.  
A specially designed print stand which holds multiple paper supplies is also available.  
Page 1-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Introduction  
Selecting Emulations  
The software interface of the printer varies, depending upon which emulation is  
selected.  
The default emulation, selected at power up, is specified by the "Mode:" value in the  
"Setup: INTERFACE" menu. Frequently, the desired emulation is specified here, and  
never changed again.  
It is also possible to switch back and forth between various emulations in order to use  
the unique features of each. A different emulation may be selected via software with  
the ESC ESC n sequence.  
Although switching emulations is essentially a seamless process, the fundamental  
differences between emulations may cause unanticipated results. For example,  
character size may vary, or tabs may work differently.  
Changing Forms/Tractor Paths  
As mentioned above, the FormsPro 4000 series printers have ten complete sets of  
forms parameters. These different parameters, or forms, may be selected either from  
the front panel or with escape sequences. In the FormsPro 4503, selecting a different  
form may also select a different tractor path. The tractor path is one of the parameters  
which may be set for each of the ten forms in the "Setup: FORMS" menu using Setup  
as described in the FormsPro 4000 Series Operator's Manual.  
Escape sequences for loading forms are only available in the Epson and Printek  
emulations. In either chapter refer to the "Load Form" escape sequence in the "Forms  
and Tractors" section.  
If you are using an emulation other than Epson or Printek, you may temporarily  
change emulations as described above, load the new form, and then return to the  
previous emulation. An example of this may be found in the "Emulations" section at  
the end of each of the emulation chapters.  
Page 1-3  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 EMULATION  
Introduction  
This section describes the control codes and escape sequences comprising ANSI  
X3.64 emulation. This emulation may be selected by specifying "Mode: ANSI  
X3.64" in the "Setup: INTERFACE" menu, or via software with the ESC ESC 1  
sequence. While this emulation is selected, control codes and escape sequences from  
other emulations are not available.  
Control codes and escape sequences are used to control printer operation. An ASCII  
control code is a single character in the range 00 hex through 1F hex, and 7F hex.  
The ESC (Escape) control code (1B hex) is used to introduce character strings called  
escape sequences, which provide an extension of the commands available with ASCII  
control codes.  
Many ANSI escape sequences begin with a two character Control Sequence  
Introducer (CSI), Escape Left Square Bracket (ESC [, 1B 5B hex). If 8-bit data is  
selected via control panel setup, these two characters may be replaced by a single  
character CSI, 9B hex. The sequences are always documented in this section with the  
two character CSI (ESC [), because this format seems to be much more common, and  
works equally well with 7-bit or 8-bit data.  
Some escape sequences accept one or more numeric parameters. A numeric  
parameter is a decimal number represented by a string of ASCII decimal digits ("0"  
through "9"). Leading zeros may be supplied, but are not necessary. Due to  
implementation constraints, the largest value that can be accepted is decimal 255.  
Larger values will be treated as zero. Omitting a numeric parameter is equivalent to  
supplying a value of zero.  
If a sequence accepts one numeric parameter, it will be represented as "n". If a  
sequence accepts more than one numeric parameter, they will be represented as "n1;  
n2; ... nx". Note that multiple numeric parameters are separated by a semicolon.  
Most ANSI escape sequences will assume one of the following formats:  
ESC f  
(no numeric parameters)  
ESC n f  
(one numeric parameter)  
ESC n1; n2; ... nx f  
(two or more numeric parameters)  
Page 2-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
The "f" at the end of the escape sequence represents the final character. It terminates  
the sequence, and specifies the function to be performed.  
Spaces are used when documenting escape sequences to increase readability. The  
spaces within the sequences are for readability only; they are not part of the  
sequences themselves. Characters that appear in italics (such as "n" and "f" above)  
are not sent to the printer as is; they are used as a place holder indicating that some  
value must be supplied.  
Multiple character strings without intervening spaces typically represent control  
codes. For example, BS is the Backspace control code (08 hex), not the two  
characters "B" and "S" (42 and 53 hex). An ASCII Control Code Table is contained  
in the appendices for your convenience. If you have any doubt about how to interpret  
a documented control code or escape sequence, refer to the hex representation in the  
provided example. This should clarify any ambiguity. The examples may also be  
helpful when analyzing a hex dump (see chapter 8) printed by the printer.  
Some escape sequences refer to the active column or active line. The active column  
is the column where the next character will be printed. Printing a character or a space  
will increment the active column. The active line is the line where the next character  
will be printed. A line feed will increment the active line. Column and line numbers  
begin at one, not at zero.  
Page 2-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Control Codes and Escape Sequences  
Grouped by Function  
Communications  
End of Text  
ETX  
If "ETX/ACK: On" is specified in the "Setup: INTERFACE" menu, then receipt of an  
ETX causes the printer to transmit an ACK to the host computer.  
Since the ETX may be a legal value within an escape sequence, it is the user's  
responsibility to ensure that an ETX used for data handshake is not sent within an  
escape sequence. The user must also ensure that the maximum block size or the  
number of blocks sent at one time does not exceed the input buffer size of the printer.  
ETX/ACK handshake is available only with serial I/O. It is not available when using  
the parallel interface or the coaxial/twinaxial interface.  
Control code:  
Hexadecimal:  
ETX  
03  
Page 2-3  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Character Size and Line Spacing  
Set Character and Line Spacing  
ESC [ n1 ; n2 SP G  
Sets the character and line spacing in decipoints (1/720 of an inch). The first  
parameter, n1, sets the line spacing. The second parameter, n2, sets the character  
spacing. Typical values for n1 and supported values for n2 are shown below. Other  
values for n2 will be ignored. To change only the horizontal or only the vertical  
spacing, omit the other value from the sequence or set it to zero. Overrides the "CPI:"  
value and the "LPI:" value in the "Setup: FORM" menu.  
n1  
120  
90  
line pitch  
6 lpi  
8 lpi  
n2  
72  
60  
54  
48  
43  
42  
36  
character pitch  
10 cpi  
12 cpi  
13.3 cpi  
15 cpi  
16.74 cpi  
17.14 cpi  
20 cpi  
Example: The following escape sequence will select 6 lpi and 10 cpi.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
2
0
;
7
2
SP  
G
1B 5B 31 32 30 3B 37 32 20 47  
Example: The following escape sequence will select 6 lpi without affecting character  
spacing.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
2
0
SP  
G
1B 5B 31 32 30 20 47  
Example: The following escape sequence will select 10 cpi without affecting line  
spacing.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
;
7
2
SP  
G
1B 5B 3B 37 32 20 47  
Page 2-4  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Character Attributes  
Select Graphic Rendition  
ESC [ n m  
Selects the graphic rendition n from the following table.  
n
0
1
3
4
Rendition  
Normal  
Emphasized  
Italic  
Underline  
For italic mode to work correctly, an Epson FX font must be selected (check the  
"Font:" value in the "Setup: FORM" menu). The other available fonts do not include  
italic characters.  
Example: The following escape sequence will select emphasized mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
m
1B 5B 31 6D  
Page 2-5  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Horizontal Position  
Carriage Return  
CR  
Causes the current line to be printed, and then sets the current print position to the left  
margin. If "Auto LF: On" is selected in the "Setup: INTERFACE" menu, a line feed  
will also be performed.  
Control code:  
Hexadecimal:  
CR  
0D  
Backspace  
BS  
Causes the current line to be printed, and then moves the current print position one  
space to the left. The actual distance moved depends on the current character  
spacing. Backspacing can be done up to, but not beyond, the left margin.  
Control code:  
Hexadecimal:  
BS  
08  
Absolute Horizontal Tab  
ESC [ n `  
Sets the current print position to column n. The actual position will depend on the  
current character spacing. If n is less than the left margin, the active column will be  
set to the left margin. If n is greater than the right margin, then a line feed will be  
performed and the active column will be set to the left margin.  
Example: The following escape sequence will set the active column to column 65.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
6
5
`
1B 5B 36 35 60  
Relative Horizontal Tab  
ESC [ n a  
Advances the current print position by n columns. The actual distance moved will  
depend on the current character spacing. Equivalent to sending n spaces (SP).  
Example: The following escape sequence will advance the active column by 10  
columns. If current character spacing is 10 cpi, this will cause the print position to  
move one inch to the right.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
0
a
1B 5B 31 30 61  
Page 2-6  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Vertical Position  
Line Feed  
(or)  
LF  
IND  
(or)  
ESC D  
Causes the current line to be printed, and then advances the paper one line at the  
current line spacing. If "Auto CR: On" is selected in the "Setup: INTERFACE"  
menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
LF  
0A  
Control code:  
Hexadecimal:  
IND  
84  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 44  
D
Partial Line Down  
(or)  
PLD  
ESC K  
Performs a half line feed. Causes the current line to be printed, and then advances the  
paper one half line at the current line spacing. If "Auto CR: On" is selected in the  
"Setup: INTERFACE" menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
PLD  
8B  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4B  
K
Partial Line Up  
(or)  
PLU  
ESC L  
Performs a reverse half line feed. Causes the current line to be printed, and then  
retracts the paper one half line at the current line spacing. If "Auto CR: On" is  
selected in the "Setup: INTERFACE" menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
PLU  
8C  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4C  
L
Page 2-7  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Absolute Vertical Tab  
ESC [ n d  
Sets the current line to line n of the current form. The actual position will depend on  
the current line spacing.  
Example: The following escape sequence will set the active line to line 12.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
2
d
1B 5B 31 32 64  
Relative Vertical Tab  
ESC [ n e  
Advances the active line by n lines. The actual distance moved will depend on the  
current line spacing. Equivalent to sending n line feeds (LF).  
Example: The following escape sequence will advance the active line by 12 lines. If  
current line spacing is 6 lpi, this will cause the paper to advance one inch.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
2
e
1B 5B 31 32 65  
Page 2-8  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Horizontal and Vertical Position  
New Line  
(or)  
NEL  
ESC E  
Causes the current line to be printed, and then sets the current print position to the left  
margin and performs a line feed. Equivalent to a carriage return (CR) line feed (LF)  
combination.  
Control code:  
Hexadecimal:  
NEL  
85  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 45  
E
Form Length and Form Feed  
Form length is the distance from the top of the form to the bottom of the form. A  
form feed will advance the paper to the top of the next form. Some programs do not  
send form feeds. Instead, they count line feeds, and send the appropriate number of  
line feeds to fill out the page. The usual rational is that the program is then in  
complete control of form length, and will work on any printer without requiring the  
correct form length to be set. However, the correct form length should always be set  
on the FormsPro 4000. Even if the program does not use form feeds, the printer will  
automatically scroll a completed form up to the tear bar to be torn off. This automatic  
scroll is based upon form length. The easiest way to set form length is via the  
"Length:" value in the "Setup: FORM" menu, so it will be correctly set for everyone  
using the form.  
Form Feed  
FF  
Causes the current line to be printed, and then advances the paper to the top of the  
next form. If a top margin is set, printing will continue at the top margin. The "FF at  
TOF: No" value in the "Setup: INTERFACE" menu allows a form feed to be ignored  
if the paper is already at top of form. If "Auto CR: On" is selected in the "Setup:  
INTERFACE" menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
FF  
0A  
Page 2-9  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Horizontal Tabs  
Horizontal tab stops are associated with columns, not absolute physical positions.  
Changing character spacing will change the physical position of the tab stops.  
Default tab stops are set at every eighth column, i.e. column 9, 17, 25, 33, 41, etc. If  
different tab stops are to be set, the default tab stops should first be cleared.  
Horizontal Tab  
HT  
Advances to the next horizontal tab stop. If no tab stop exists between the active  
column and the right margin, the HT will be ignored. Default tab stops are set at  
every eighth column, i.e. column 9, 17, 25, 33, 41, etc. Different tab stops may be set  
with ESC H, ESC 1, or ESC [ n1 ; n2 ; ... nx u.  
Control code:  
Hexadecimal:  
HT  
09  
Set Horizontal Tab Stop  
(or)  
HTS  
ESC H  
Sets a horizontal tab stop at the current print position. The tab stop is associated with  
the active column, not an absolute physical position. Changing character spacing will  
change the physical position of the tab stop.  
Default tab stops are set at every eighth column, i.e. column 9, 17, 25, 33, 41, etc.  
The tab stop set by this escape sequence will be added to previously set tab stops,  
including the default tab stops. If this is not desired, the old tab stops should first be  
cleared.  
Control code:  
Hexadecimal:  
HTS  
88  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 48  
H
Clear Horizontal Tab Stop  
(or)  
ESC [ g  
ESC [ 0 g  
Clears the horizontal tab stop at the current print position. The tab stop to be cleared  
is associated with the active column (based upon the current character spacing), not  
an absolute physical position.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 5B 67  
[
g
Page 2-10  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Clear all horizontal tab stops  
(or)  
ESC [ 2 g  
ESC [ 3 g  
Clears all currently set horizontal tab stops.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
2
g
1B 5B 32 67  
Escape Sequence:  
Hexadecimal:  
ESC  
[
3
g
1B 5B 33 67  
Page 2-11  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Vertical Tabs  
Vertical tab stops are associated with lines, not absolute physical positions. Changing  
line spacing will change the physical position of the tab stops.  
Vertical Tab  
VT  
Causes the current line to be printed, and then advances the paper to the next vertical  
tab stop. If no vertical tab stops are set, then a line feed is done instead. If "Auto CR:  
On" is selected in the "Setup: INTERFACE" menu, a carriage return will also be  
performed.  
Control code:  
Hexadecimal:  
VT  
0B  
Set Vertical Tab Stop  
(or)  
VTS  
ESC J  
Sets a vertical tab stop at the current line. The tab stop is associated with the active  
line, not an absolute physical position. Changing line spacing will change the  
physical position of the tab stop.  
The tab stop set by this escape sequence will be added to previously set tab stops. If  
this is not desired, the old tab stops should first be cleared.  
Control code:  
Hexadecimal:  
VTS  
8A  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4A  
J
Clear Vertical Tab Stop  
ESC [ 1 g  
Clears the vertical tab stop at the current line. The tab stop to be cleared is associated  
with the active line (based upon the current line spacing), not an absolute physical  
position.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
g
1B 5B 31 67  
Clear All Vertical Tab Stops  
ESC [ 4 g  
Clears all currently set vertical tab stops.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
4
g
1B 5B 34 67  
Page 2-12  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Printer Controls  
Bell  
BEL  
Causes the printer's bell to sound.  
Control code:  
Hexadecimal:  
BEL  
07  
Select Automatic Carriage Return  
ESC [ 20 h  
Selects automatic carriage return mode. This causes the printer to automatically  
perform a carriage return (CR) for each line feed (LF), vertical tab (VT), or form feed  
(FF) that it receives. Overrides the "Auto CR:" value in the "Setup: INTERFACE"  
menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
2
0
h
1B 5B 32 30 68  
Cancel Automatic Carriage Return  
ESC [ 20 l  
Cancels automatic carriage return mode. Overrides the "Auto CR:" value in the  
"Setup: INTERFACE" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
2
0
l
1B 5B 32 30 6C  
Reset  
ESC c  
Deletes all data on the current line and initializes the printer to the default settings for  
the current form.  
Restores the default horizontal tab stops. Default tab stops are set at every eighth  
column, i.e. column 9, 17, 25, 33, 41, etc.  
Resets top of form to the current position, so it is wise to be at top of form before  
performing this reset. Issuing a form feed will guarantee this.  
See the appendix on Printer Reset Conditions for more information.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 63  
c
Page 2-13  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Emulations  
Select Software Interface n  
ESC ESC n  
Selects the software interface n according to the table below.  
n
0
1
2
3
4
5
6
Software Interface  
Test (reserved for factory use)  
ANSI X3.64 Emulation  
Epson FX Emulation  
Bar Code Mode (optional)  
IBM Proprinter Emulation  
DEC LA120 Emulation  
TTY Emulation  
7
Printek Emulation  
?
@
Previously Selected Emulation  
Default Emulation  
Overrides the "Mode:" value in the "Setup: INTERFACE" menu.  
BarberPole" and "Mode: Hex Dump" cannot be overridden.  
"Mode:  
A numeric value for n may be specified in two different ways, with equivalent results:  
a single byte with a value of 00 to 07 hex, or a single printable ASCII character "0" to  
"7" (30 to 37 hex).  
If more than one emulation has been selected, ESC ESC ? will return to the  
previously selected emulation. This is particularly useful when the previous  
emulation is unknown. Please beware that the memory (stack) is only one level deep.  
ESC ESC @ will return to the default emulation, as specified by the "Mode:" value in  
the "Setup: INTERFACE" menu.  
This chapter describes ANSI X3.64 emulation. If a different interface is selected, the  
control codes and escape sequences described in this chapter will no longer be  
applicable.  
Example: The following escape sequences will select Printek emulation, load form  
one, and then return to the previous emulation.  
Escape Sequence:  
Hexadecimal:  
ESC ESC  
7
ESC  
L
1
ESC ESC  
?
1B 1B 07 1B 4C 01 1B 1B 3F  
Page 2-14  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ANSI X3.64 Emulation  
Control Codes and Escape Sequences  
Sorted Alphabetically  
BEL  
BS  
Bell  
Backspace  
CR  
Carriage Return  
Line Feed  
ESC D  
ESC E  
ESC ESC n  
ESC H  
ESC J  
New Line  
Select Software Interface n  
Set Horizontal Tab Stop  
Set Vertical Tab Stop  
Partial Line Down  
ESC K  
ESC L  
ESC [ n1 ; n2 SP G  
ESC [ n `  
ESC [ n a  
ESC [ n d  
ESC [ n e  
ESC [ g  
ESC [ 0 g  
ESC [ 1 g  
ESC [ 2 g  
ESC [ 3 g  
ESC [ 4 g  
ESC [ 20 h  
ESC [ 20 l  
ESC [ n m  
ESC c  
Partial Line Up  
Set Character and Line Spacing  
Absolute Horizontal Tab  
Relative Horizontal Tab  
Absolute Vertical Tab  
Relative Vertical Tab  
Clear Horizontal Tab Stop  
Clear Horizontal Tab Stop  
Clear Vertical Tab Stop  
Clear All Horizontal Tab Stops  
Clear All Horizontal Tab Stops  
Clear All Vertical Tab Stops  
Select Automatic Carriage Return  
Cancel Automatic Carriage Return  
Select Graphic Rendition  
Reset  
ETX  
End of Text  
FF  
Form Feed  
HT  
Horizontal Tab  
HTS  
IND  
Set Horizontal Tab Stop  
Line Feed  
LF  
Line Feed  
NEL  
New Line  
PLD  
Partial Line Down  
PLU  
Partial Line Up  
VT  
Vertical Tab  
VTS  
Set Vertical Tab Stop  
Page 2-15  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Download from Www.Somanuals.com. All Manuals Search And Download.  
EPSON FX EMULATION  
Introduction  
This section describes the control codes and escape sequences comprising Epson FX  
emulation. This emulation may be selected by specifying "Mode: Epson" in the  
"Setup: INTERFACE" menu, or via software with the ESC ESC 2 sequence. While  
this emulation is selected, control codes and escape sequences from other emulations  
are not available.  
Control codes and escape sequences are used to control printer operation. An ASCII  
control code is a single character in the range 00 hex through 1F hex, and 7F hex.  
The ESC (Escape) control code (1B hex) is used to introduce character strings called  
escape sequences, which provide an extension of the commands available with ASCII  
control codes.  
Some escape sequences accept one or more numeric parameters. If a sequence  
accepts one numeric parameter, it will be represented as "n". If a sequence accepts  
more than one numeric parameter, they will be represented as "n1 n2 ... nx".  
Since numeric parameters are always encoded in one byte, their values may range  
from 0 to 255 decimal. Please note that the value will never be represented by a  
string of ASCII decimal digits ("0" through "9"). For example, a value of 66 decimal  
would be sent as a single byte with a hex value of 42. This is equivalent to sending  
the ASCII character "B". It is entirely different than sending the two printable ASCII  
characters "66".  
If a numeric parameter is limited to a value of zero or one, it may be sent as a single  
byte with a value of 00 or 01 hex (NUL or SOH), or it may be sent as a single  
printable ASCII character "0" or "1" (30 or 31 hex).  
Spaces are used when documenting escape sequences to increase readability. The  
spaces within the sequences are for readability only; they are not part of the  
sequences themselves. Characters that appear in italics (such as "n" and "n1 n2"  
above) are not sent to the printer as is; they are used as a place holder indicating that  
some value must be supplied.  
Multiple character strings without intervening spaces typically represent control  
codes. For example, BS is the Backspace control code (08 hex), not the two  
characters "B" and "S" (42 and 53 hex). An ASCII Control Code Table is contained  
in the appendices for your convenience. If you have any doubt about how to interpret  
Page 3-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
a documented control code or escape sequence, refer to the hex representation in the  
provided example. This should clarify any ambiguity. The examples may also be  
helpful when analyzing a hex dump (see chapter 8) printed by the printer.  
Column and line numbers begin at zero, not at one. Keep this in mind when setting  
tabs, margins, etc.  
Page 3-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Control Codes and Escape Sequences  
Grouped by Function  
Communications  
Cancel Line  
CAN  
Cancels all printable text in the current print line. Does not affect any control codes  
or escape sequences.  
Control code:  
Hexadecimal:  
CAN  
18  
Delete Character  
DEL  
Deletes the last printable character from the current line. Does not affect any control  
codes or escape sequences.  
Control code:  
Hexadecimal:  
DEL  
7F  
End of Text  
ETX  
If "ETX/ACK: On" is specified in the "Setup: INTERFACE" menu, then receipt of an  
ETX causes the printer to transmit an ACK to the host computer.  
Since the ETX may be a legal value within an escape sequence, it is the user's  
responsibility to ensure that an ETX used for data handshake is not sent within an  
escape sequence. The user must also ensure that the maximum block size or the  
number of blocks sent at one time does not exceed the input buffer size of the printer.  
ETX/ACK handshake is available only with serial I/O. It is not available when using  
the parallel interface or the coaxial/twinaxial interface.  
If the printing of low symbols is enabled, ETX will be treated as a printable character  
instead of an I/O handshake control code.  
Control code:  
Hexadecimal:  
ETX  
03  
Page 3-3  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Set MSB to 0  
ESC =  
Sets the MSB (most significant bit) of all following data to zero. Some computers  
always set the MSB to one, causing all characters to print in italic mode. This escape  
sequence can overcome the problem. The problem can also be avoided by selecting  
"Data Bits: 7" in the "Setup: INTERFACE" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 3D  
=
Set MSB to 1  
ESC >  
Sets the MSB (most significant bit) of all following data to one. This escape  
sequence allows the eighth bit to be turned on, even if the computer and printer are  
connected via a 7-bit I/O interface. The eighth bit may be useful for 8-pin graphics  
data, or for accessing italic characters.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 3E  
>
Cancel MSB Control  
ESC #  
Cancels the MSB (most significant bit) control set by ESC = or ESC >. This causes  
the eighth data bit sent from the host computer to be accepted as is.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 23  
#
Deselect Printer  
(or)  
DC3  
XOFF  
Deselects the printer. Use of this command is discouraged, because the printer will  
remain offline until an operator presses the ONLINE button on the control panel.  
Control code:  
Hexadecimal:  
DC3  
13  
Page 3-4  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Character Size  
The FormsPro 4000 is capable of supporting 10, 12, 13.3, 15, 16.7, 17.14, and 20 cpi,  
but most emulations support only a subset of these. Epson emulation supports 10, 12,  
15, 17.14, and 20 cpi via software, but does not support 13.3 or 16.7 cpi. Every  
emulation supports 10 cpi, and we consider this to be the default character pitch.  
When you use the control panel to change the "CPI:" value in the "Setup: FORM"  
menu, you are actually changing the default character pitch. When the printer is  
turned on (or reset), it will use this character pitch. You can even use a pitch that is  
not supported by your emulation, such as 13.3 cpi with Epson emulation. You can  
override this pitch selection via software, by sending an escape sequence. This  
selects a user specified non-default pitch. For example, in Epson emulation, sending  
ESC M will select 12 cpi. Sending ESC P will re-select 10 cpi, and thus re-select the  
default character pitch that was selected in the form setup.  
Via software escape sequences, you can select any character pitch supported by the  
emulation you are using. All will print as expected, unless you select 10 cpi --  
because 10 cpi really selects the default character pitch from setup. If you really want  
10 cpi, then you must specify "CPI: 10" in the "Setup: FORM" menu. Likewise, if  
you want to use the default pitch from setup, you must not override it. Either send no  
character pitch sequences to the printer, or make sure you re-select 10 cpi via  
software.  
When you select different forms, the default character pitch from setup is selected  
along with the form. But you will not see this default pitch if it has already been  
overridden via software.  
Select 10 CPI  
ESC P  
Selects 10 cpi by cancelling 12 cpi and 15 cpi. Condensed mode is unaffected. The  
resulting character spacing will be 10 cpi, or if condensed mode is also selected,  
17.14 cpi.  
If "CPI: 10" was not specified in the "Setup: FORM" menu, the specified default  
character pitch will be selected instead of 10 cpi.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 50  
P
Select 12 CPI  
ESC M  
Selects 12 cpi (elite mode). Cancels 15 cpi. Condensed mode is unaffected. The  
resulting character spacing will be 12 cpi, or if condensed mode is also selected, 20  
cpi.  
Page 3-5  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Escape Sequence:  
Hexadecimal:  
ESC M  
1B 4D  
Select 15 CPI  
ESC g  
Selects 15 cpi. Cancels 12 cpi. Condensed mode is unaffected. The resulting  
character spacing will be 15 cpi, even if condensed mode is also selected.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 67  
g
Select Condensed Mode  
(or)  
SI  
ESC SI  
Selects condensed mode. The resulting character spacing will be 17.14 cpi if 10 cpi  
was selected, or 20 cpi if 12 cpi was selected. If 15 cpi was selected, condensed  
mode will have no affect.  
Control code:  
Hexadecimal:  
SI  
0F  
Escape Sequence:  
Hexadecimal:  
ESC SI  
1B 0F  
Cancel Condensed Mode  
DC2  
Cancels condensed mode set by SI or ESC SI.  
Control code:  
Hexadecimal:  
DC2  
12  
Select double-wide mode (one line)  
(or)  
SO  
ESC SO  
Selects double-wide mode for one line. Double-wide mode doubles the width of all  
characters, but does not affect character height. This mode is cancelled by a carriage  
return or DC4.  
Control code:  
Hexadecimal:  
SO  
0E  
Escape Sequence:  
Hexadecimal:  
ESC SO  
1B 0E  
Page 3-6  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Cancel Double-Wide Mode (one line)  
DC4  
Cancels double-wide mode selected by SO or ESC SO. Does not cancel double-wide  
mode selected by ESC W or ESC !.  
Control code:  
Hexadecimal:  
DC4  
14  
Double-Wide Mode  
ESC W n  
Selects double-wide mode for n=1, or cancels for n=0. Double-wide mode doubles  
the width of all characters, but does not affect character height.  
Example: The following escape sequence will select double-wide mode.  
Escape Sequence:  
Hexadecimal:  
ESC W  
1B 57 31  
1
Double-High Mode  
ESC w n  
Selects double-high mode for n=1, or cancels for n=0. Double-high mode doubles the  
height of all characters, but does not affect character width.  
Example: The following escape sequence will select double-high mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 77 31  
w
1
Select Subscript or Superscript Mode  
ESC S n  
Selects subscript mode for n=1, or superscript mode for n=0. This will print  
characters about half the normal height, in the bottom or top half of the normal  
character cell.  
Example: The following escape sequence will select superscript mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 53 30  
S
0
Cancel Subscript and Superscript Mode  
ESC T  
Cancels subscript and superscript mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 54  
T
Page 3-7  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Character Attributes  
Select Emphasized Mode  
ESC E  
Selects emphasized mode. This makes characters bolder by printing an extra dot to  
the right of each dot normally found in the character matrix. This will cut the print  
speed in half, but will not require an additional pass of the print head. Overrides the  
"Impact:" value in the "Setup: FORM" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 45  
E
Cancel Emphasized Mode  
ESC F  
Cancels emphasized mode. Overrides the "Impact:" value in the "Setup: FORM"  
menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 46  
F
Select Double-Strike Mode  
ESC G  
Selects double-strike mode. This makes text bolder by printing it twice. This will cut  
the print speed in half, because an additional pass of the print head will be required.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 47  
G
Cancel Double-Strike Mode  
ESC H  
Cancels double-strike mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 48  
H
Underline Mode  
ESC - n  
Selects underline mode for n=1, or cancels for n=0. This mode provides continuous  
underlining for all characters, including spaces.  
Example: The following escape sequence will turn underlining on.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 2D 31  
-
1
Page 3-8  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Select Italic Mode  
ESC 4  
Selects italic mode. This causes italic characters to be printed by setting the MSB  
(most significant bit) of all following printable characters to one. The effect is to map  
characters from the bottom half (non-italic) of the font to the top half (italic) of the  
font. For this to work correctly, an Epson FX font must be selected (see ESC k). The  
other available fonts do not include italic characters.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 34  
4
Cancel Italic Mode  
ESC 5  
Cancels italic mode. The MSB (most significant bit) of the following printable  
characters will be accepted as is. Italic characters may still be printed by transmitting  
characters with the MSB turned on.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 35  
5
Master Print Mode Select  
ESC ! n  
Selects any valid combination of modes from the following table. The value of n is  
determined by adding together the values of the desired modes from the table.  
n
0
Attribute  
10 cpi  
1
12 cpi  
4
8
16  
32  
64  
128  
Condensed  
Emphasized  
Double-Strike  
Double-Wide  
Italic  
Underline  
Example: The following escape sequence will select 12 cpi condensed, resulting in  
20 cpi character spacing.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 21 05  
!
5
Example: The following escape sequence will select emphasized, double-wide, and  
underline, for a heading that really stands out.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 21 A8  
!
168  
Page 3-9  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Character Sets  
Select Draft or Letter Quality  
ESC x n  
Selects draft for n=0 or letter quality for n=1. Same as ESC k 0 or ESC k 1.  
Overrides the "Font:" value in the "Setup: FORM" menu.  
Example: The following escape sequence will select draft print.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 78 30  
x
0
Select Font  
ESC k n  
Select font n according to the following table.  
n
0
Font  
Epson FX Draft  
1
Epson FX Letter Quality  
Proprinter Draft  
Proprinter Letter Quality  
EBCDIC Draft (optional)  
EBCDIC Letter Quality (optional)  
OCR-A Optical Quality (optional)  
OCR-B Optical Quality (optional)  
2
3
10  
11  
12  
13  
32  
33  
34  
36  
37  
38  
44  
45  
46  
64  
65  
66  
71  
75  
Epson FX Fast Draft  
Epson FX Draft  
Epson FX Letter Quality  
Proprinter PC Fast Draft  
Proprinter PC Draft  
Proprinter PC Letter Quality  
PC Latin II (Slavic) Fast Draft  
PC Latin II (Slavic) Draft  
PC Latin II (Slavic) Letter Quality  
EBCDIC Fast Draft  
EBCDIC Draft  
EBCDIC Letter Quality  
OCR-A Optical Quality  
OCR-B Optical Quality  
Overrides the "Font:" value in the "Setup: FORM" menu. If the specified font is not  
installed, the "Font:" value in the "Setup: FORM" menu will be used to select the  
default font.  
Example: The following escape sequence will select the Epson FX letter quality font.  
Page 3-10  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 6B 01  
k
1
Page 3-11  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Select International Character Set  
ESC R n  
Selects the international character set as specified by the value of n in the following  
table. Overrides the "Lang:" value in the "Setup: FORM" menu.  
n
0
1
2
3
4
5
6
7
8
Character Set  
United States of America  
France  
Germany  
United Kingdom  
Denmark  
Sweden  
Italy  
Spain  
Japan  
The actual character substitutions are shown in the "International Character Mapping"  
table below. For this to work correctly, an Epson FX font must be selected (see  
ESC k).  
35 36 64 91 92 93 94 96 123 124 125 126  
USA  
#
#
#
£
#
#
#
$
$
$
$
$
¤
$
$
$
@
à
§
@
@
É
@
@
@
[
°
Ä
[
Æ
Ä
°
\
ç
Ö
\
Ø
Ö
\
Ñ
¥
]
§
Ü
]
Å
Å
é
^
^
^
^
^
Ü
^
^
^
`
`
`
`
`
é
ù
`
{
é
ä
{
æ
ä
à
¨
_
ù
ö
_
ø
ö
ò
ñ
_
}
è
ü
}
å
å
è
}
}
˜
¨
ß
˜
˜
ü
ì
France  
Germany  
England  
Denmark  
Sweden  
Italy  
Spain  
Japan  
PTS  
#
¡
[
¿
]
˜
˜
`
{
Example: The following escape sequence will select the German character set.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 52 02  
R
2
Character Table  
ESC t n  
Selects the Epson italic character set or the Epson extended graphics character set.  
As implemented, this selects either the Epson FX font or the PC USA font. The  
character attribute (fast draft, draft, or letter quality) will not change.  
Example: The following escape sequence will select the Epson FX font.  
Page 3-12  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 74 30  
t
0
Enable Printing of High Symbols  
ESC 6  
Enables printing of character values 128 through 159 decimal. If printing is not  
enabled, these characters will be treated as control codes. Overrides the "Chars:"  
value in the "Setup: INTERFACE" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 36  
6
Disable Printing of High Symbols  
ESC 7  
Disables printing of character values 128 through 159 decimal. These characters will  
be treated as control codes. Overrides the "Chars:" value in the "Setup:  
INTERFACE" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 37  
7
Printing of Low Symbols  
ESC I n  
Enables printing of character values 0 through 31 decimal if they are not used as  
control codes for n=1, or disables printing for n=0. Overrides the "Chars:" value in  
the "Setup: INTERFACE" menu.  
Example: The following escape sequence will disable printing of character values 0  
through 31 decimal.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 49 30  
I
0
Page 3-13  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Line Pitch  
Select 8 LPI  
ESC 0  
Sets the line spacing to 1/8 of an inch per line (8 lpi). Overrides the "LPI:" value in  
the "Setup: FORM" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 30  
0
Set Line Spacing to 7/72"  
ESC 1  
Sets the line spacing to 7/72 of an inch per line. Since the distance between print  
head wires is 1/72 of an inch, this is equivalent to setting seven wire spacing. This is  
not particularly useful for text, but may be useful for graphics if 7-bit graphics data is  
being sent. Overrides the "LPI:" value in the "Setup: FORM" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 31  
1
Select 6 LPI  
ESC 2  
Sets the line spacing to 1/6 of an inch per line (6 lpi). This is the normal text line  
spacing. Overrides the "LPI:" value in the "Setup: FORM" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 32  
2
Set Line Spacing to n/216"  
ESC 3 n  
Sets the line spacing to n/216 of an inch per line. 0³n³ 255. Overrides the "LPI:"  
value in the "Setup: FORM" menu.  
NOTE: The actual resolution of the FormsPro 4000 paper stepper motor is 1/288 of  
an inch. When spacing is specified in 1/216 of an inch, the printer will actually move  
paper to the nearest 1/288 of an inch.  
Example: The following escape sequence will set line spacing to one half inch.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 33 6C  
3
108  
Page 3-14  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Set Line Spacing to n/72"  
ESC A n  
Sets the line spacing to n/72 of an inch per line. 0³ n³ 255. Since the distance  
between print head wires is 1/72 of an inch, this is equivalent to setting n wire  
spacing. Overrides the "LPI:" value in the "Setup: FORM" menu.  
Example: The following escape sequence will set line spacing to 8/72 of an inch, for  
use with eight wire graphics.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 41 08  
A
8
Horizontal Position  
Carriage Return  
CR  
Causes the current line to be printed, and then sets the current print position to the left  
margin. If "Auto LF: On" is selected in the "Setup: INTERFACE" menu, a line feed  
will also be performed.  
Control code:  
Hexadecimal:  
CR  
0D  
Backspace  
BS  
Causes the current line to be printed, and then moves the current print position one  
space to the left. The actual distance moved depends on the current character  
spacing. Backspacing can be done up to, but not beyond, the left margin.  
Control code:  
Hexadecimal:  
BS  
08  
Page 3-15  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Vertical Position  
Line Feed  
LF  
Causes the current line to be printed, and then advances the paper one line at the  
current line spacing. If "Auto CR: On" is selected in the "Setup: INTERFACE"  
menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
LF  
0A  
Variable Distance Line Feed  
ESC J n  
Causes the current line to be printed, and then performs a single line feed of n/216ths  
of an inch. 0³ n³ 255. Does not change the current line spacing. If "Auto CR: On" is  
selected in the "Setup: INTERFACE" menu, a carriage return will also be performed.  
Example: The following escape sequence will advance the paper one half inch.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4A 6C  
J
108  
Variable Distance Reverse Line Feed  
ESC j n  
Performs a single reverse line feed of n/216ths of an inch. 0³ n³ 255. Does not  
change the current line spacing. If "Auto CR: On" is selected in the "Setup:  
INTERFACE" menu, a carriage return will also be performed.  
Example: The following escape sequence will move the paper down one half inch.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 6A 6C  
j
108  
Page 3-16  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Form Length and Form Feed  
Form length is the distance from the top of the form to the bottom of the form. Form  
length may be specified either in inches, or in lines. A form feed will advance the  
paper to the top of the next form. Some programs do not send form feeds. Instead,  
they count line feeds, and send the appropriate number of line feeds to fill out the  
page. The usual rational is that the program is then in complete control of form  
length, and will work on any printer without requiring the correct form length to be  
set. However, the correct form length should always be set on the FormsPro 4000.  
Even if the program does not use form feeds, the printer will automatically scroll a  
completed form up to the tear bar to be torn off. This automatic scroll is based upon  
form length. The easiest way to set form length is via the "Length:" value in the  
"Setup: FORM" menu, so it will be correctly set for everyone using the form. If  
correct form length cannot be guaranteed from SETUP, then each program should set  
the correct form length.  
Set Form Length in Lines  
ESC C n  
Sets the form length to n lines at the current line spacing. 1³ n³ 255. Maximum form  
length is 37.9 inches. Invalid form lengths will be ignored. Overrides the "Length:"  
value in the "Setup: FORM" menu.  
For example, an 11 inch form contains 66 lines at 6 LPI, but 88 lines at 8 LPI. If line  
spacing is changed after setting the form length, the physical form length (in inches)  
will not be changed.  
Resets top of form to the current position, so it is wise to be at top of form before  
setting form length. Issuing a form feed will guarantee this. Vertical margins are  
cleared.  
Example: The following escape sequence will set form length to 66 lines. At 6 LPI,  
this will result in a form length of 11 inches.  
Escape sequence:  
Hexadecimal:  
ESC  
1B 43 42  
C
66  
Set Form Length in Inches  
ESC C NUL n  
Sets the form length to n inches. 1³ n³ 37. Maximum form length is 37.9 inches.  
Invalid form lengths will be ignored. Overrides the "Length:" value in the "Setup:  
FORM" menu.  
Resets top of form to the current position, so it is wise to be at top of form before  
setting form length. Issuing a form feed will guarantee this. Vertical margins are  
cleared.  
Page 3-17  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Example: The following escape sequence will set form length to 11 inches,  
regardless of what line spacing is set.  
Escape sequence:  
Hexadecimal:  
ESC C NUL 11  
1B 43 00 0B  
Form Feed  
FF  
Causes the current line to be printed, and then advances the paper to the top of the  
next form. If a top margin is set, printing will continue at the top margin. The "FF at  
TOF: No" value in the "Setup: INTERFACE" menu allows a form feed to be ignored  
if the paper is already at top of form. If "Auto CR: On" is selected in the "Setup:  
INTERFACE" menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
FF  
0A  
Page 3-18  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Horizontal Tabs  
Default horizontal tab stops are set at every eighth column, i.e. column 8, 16, 24, 32,  
40, etc. The default tab stops are associated with columns, not absolute physical  
positions. Changing character spacing will change the physical position of the default  
tab stops.  
User defined horizontal tab stops are associated with absolute physical positions, not  
with columns. The tab stops are set relative to the current character spacing, but  
subsequent changes in character spacing will not affect the physical position of the  
tab stops (except that the position will be rounded up to the closest character  
boundary).  
Horizontal Tab  
HT  
Advances to the next horizontal tab stop. If no tab stop exists between the active  
column and the right margin, the HT will be ignored. Default tab stops are set at  
every eighth column, i.e. column 8, 16, 24, 32, 40, etc. Different tab stops may be set  
with ESC D.  
Control code:  
Hexadecimal:  
HT  
09  
Absolute Horizontal Tab  
ESC $ n1 n2  
Move to the specified carriage position. The position is specified in 60ths of an inch,  
n1+(n2 « 256)  
and calculated as  
inches. The position is relative to the left margin and  
60  
must not exceed the right margin or it will be ignored.  
Example: The following escape sequence will set the carriage position 5 inches  
(300/60 inches) from the left margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
$
44  
1
1B 24 2C 01  
Page 3-19  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Relative Horizontal Tab  
ESC \ n1 n2  
Move the carriage position to the left or right of the current carriage position. The  
(
)
n1+ n2 « 256  
displacement is specified in 120ths of an inch, and calculated as  
inches.  
120  
The new position is relative to the current carriage position, and must fall within the  
left and right margins or it will be ignored. A negative displacement (2’s  
complement) causes a move to the left.  
Example: The following escape sequence will move the carriage one inch to the  
right.  
Escape Sequence:  
Hexadecimal:  
ESC  
\
120  
0
1B 5C 78 00  
Example: The following escape sequence will move the carriage one inch to the left.  
Escape Sequence:  
Hexadecimal:  
ESC  
\
136 255  
1B 5C 88 FF  
Set Horizontal Tab Stops  
ESC D n1 n2 ... nx NUL  
Clears all currently set horizontal tab stops, and sets new tab stops at column n1, n2,  
n3, etc. 1³ n³ 255. The tab stops must be presented in ascending order. The NUL  
character, or any tab stop value less than the preceding one, terminates the sequence.  
The tab stops are set relative to the current character spacing, but subsequent changes  
in character spacing will not affect the physical position of the tab stops (except that  
the position will be rounded up to the closest character boundary). The leftmost  
column is column zero.  
Default tab stops are set at every eighth column, i.e. column 8, 16, 24, 32, 40, etc.  
The tab stops set by ESC D will replace the default tab stops. ESC D NUL will clear  
all tab stops, leaving no tab stops set. The default tab stops are restored by ESC @.  
Example: The following escape sequence will set horizontal tab stops at half inch  
intervals, if character spacing is currently 10 cpi.  
Escape Sequence:  
Hexadecimal:  
ESC  
D
5
10 15 20 25 30 NUL  
14 19 1E 00  
1B 44 05 0A 0f  
Page 3-20  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Vertical Tabs  
Vertical tab stops are associated with absolute physical positions, not with lines. The  
tab stops are set relative to the current line spacing, but subsequent changes in line  
spacing will not affect the physical position of the tab stops.  
Vertical Tab  
VT  
Causes the current line to be printed, and then advances the paper to the next vertical  
tab stop. If no vertical tab stops are set, then a line feed is done instead. If "Auto CR:  
On" is selected in the "Setup: INTERFACE" menu, a carriage return will also be  
performed.  
Control code:  
Hexadecimal:  
VT  
0B  
Set Vertical Tab Stops  
ESC B n1 n2 ... nx NUL  
Clears all currently set vertical tab stops, and sets new tab stops at line n1, n2, n3, etc.  
1³ n³ 255. The tab stops must be presented in ascending order. The NUL character,  
or any tab stop value less than the preceding one, terminates the sequence. The tab  
stop settings are based on the current line spacing. Changing the line spacing after  
the tab stops are set will not affect the position of the tab stops. The first line is line  
zero.  
ESC B NUL will clear all currently set vertical tab stops, leaving no vertical tab stops  
set.  
Example: The following escape sequence will set vertical tab stops at line 6, 12, and  
24. If line spacing is currently 6 lpi, this will result in tab stops one inch, two inches,  
and four inches from the top of the form.  
Escape Sequence:  
Hexadecimal:  
ESC  
B
6
12 24 NUL  
1B 42 06 0C 18 00  
Page 3-21  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Horizontal Margins  
Printing is allowed only within the left and right margins. Exceeding the right margin  
will cause line wrap, setting the current print position to the left margin and  
advancing the paper one line.  
Set Left Margin  
ESC l n  
Sets the left margin to column n at the current character spacing. If character spacing  
is changed after setting the left margin, the position of the left margin will not change.  
The left margin is inclusive. For example, a left margin at column 10 still allows a  
character to be printed in column 10.  
The leftmost column is column zero. The left margin must be left of the right margin  
and ³ 13.4 inches. Invalid left margins will be ignored. Overrides the "Left Mar:"  
value in the "Setup: FORM" menu.  
Example: The following escape sequence will set a one inch left margin, if character  
spacing is currently 10 cpi.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 6C 0A  
l
10  
Set Right Margin  
ESC Q n  
Sets the right margin to column n at the current character spacing. If character  
spacing is changed after setting the right margin, the position of the right margin will  
not change.  
The right margin is exclusive. For example, a right margin at column 75 allows a  
character to be printed in column 74, but not in column 75.  
The leftmost column is column zero. The right margin must be right of the left  
margin and £13.6 inches. Invalid right margins will be ignored. Overrides the "Right  
Mar:" value in the "Setup: FORM" menu.  
Example: The following escape sequence will set a right margin 7.5 inches from the  
left edge of the form, if character spacing is currently 10 cpi. For a standard 8.5 inch  
wide form, this would result in a one inch right margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 51 4B  
Q
75  
Page 3-22  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Vertical Margins  
Printing is allowed only within the top and bottom margins. Exceeding the bottom  
margin will set the current line to the top margin of the next form.  
Set Perforation Skip  
ESC N n  
Sets the perforation skip distance to n lines at the current line spacing. 1³ n³ 255. If  
line spacing is changed after setting the skip distance, the skip distance will not be  
changed.  
The skip distance is split between the top and bottom margins, so the perforation will  
be centered in the resulting white space. The specified skip distance must be less than  
the form length, or the command will be ignored. Perforation skip is canceled by  
ESC O, ESC C n or ESC C NUL n. Overrides the "Top Mar:" and "Btm Mar:" values  
in the "Setup: FORM" menu.  
Example: The following escape sequence will set a two inch perforation skip  
distance, if the current line spacing is 6 lpi. This will result in a one inch top and  
bottom margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4E 0C  
N
12  
Cancel Perforation Skip  
ESC O  
Cancels perforation skip. This is equivalent to having no top and bottom margin.  
Overrides the "Top Mar:" and "Btm Mar:" values in the "Setup: FORM" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4F  
O
Page 3-23  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Graphics  
Graphics mode gives the user complete control over every dot position on the paper.  
Graphics may be printed with various horizontal densities from 60 to 240 dpi, and a  
vertical density of 72 dpi.  
Each byte of graphics data represents a vertical column of eight dots, with the MSB  
(most significant bit) corresponding to the top wire of the print head. Turning a bit on  
causes a dot to be printed. The bit values corresponding to each wire of the print head  
are shown below:  
wire 1  
wire 2  
wire 3  
wire 4  
wire 5  
wire 6  
wire 7  
wire 8  
128 (80 hex)  
64 (40 hex)  
32 (20 hex)  
16 (10 hex)  
8
4
2
1
(08 hex)  
(04 hex)  
(02 hex)  
(01 hex)  
The appropriate bit values are added together to fire the desired wires. For example,  
a byte of graphics data with the value 128 (80 hex) will fire the top wire, wire 1. A  
value of 192 (C0 hex) will fire the top two wires, wires 1 and 2. A value of 11 (0B  
hex) will fire wires 5, 7 and 8.  
Each graphics sequence contains two bytes (n1 and n2) that specify how many bytes  
of graphics data follow. The first byte, n1, can specify values up to 255. If that is  
sufficient, then n2 is set to zero. For values greater than 255, n2 comes into play.  
The n2 byte specifies multiples of 256. For example, to specify 520 bytes of graphics  
data, n1 = 8 and n2 = 2. The bytes of graphics data are strung together to create a  
graphics line that is eight dots high, and n1 + (n2 x 256) dots long. Be sure to provide  
the amount of graphics data that you specify, because the printer will not leave  
graphics mode until it has accepted the specified number of data bytes.  
If "Data Bits: 7" is specified in the "Setup: INTERFACE" menu, beware of potential  
problems in graphics mode. Since the MSB (most significant bit) will always be  
turned off, it will not be possible to fire the top wire of the print head. Worse yet, the  
value of n1 or n2 may be changed. For example, if n1 specifies 200 bytes of data,  
and its MSB is turned off, the printer will only expect 72 bytes of data. It will exit  
graphics mode, and then try to print the remaining 128 bytes of graphics data as  
normal text characters. The result will surely not be pretty. To avoid such problems,  
the use of an 8-bit I/O interface for printing graphics is highly recommended.  
The normal graphics modes allow every dot to be printed. High speed graphics will  
print twice as fast, but will not allow consecutive dots to be printed.  
Page 3-24  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
60 DPI Graphics  
ESC K n1 n2 data  
Selects eight wire single density (60 dpi) graphics for n1 + (n2 x 256) columns of  
data.  
Example: The following escape sequence will print six bytes of graphics data at 60  
dpi. The resulting figure will resemble a backslash character, "\".  
Escape Sequence:  
Hexadecimal:  
ESC  
K
6
0
128 64 32 16  
8
4
1B 4B 06 00 80 40 20 10 08 04  
120 DPI Graphics  
ESC L n1 n2 data  
Selects eight wire double density (120 dpi) graphics for n1 + (n2 x 256) columns  
data.  
Example: The following escape sequence will print six bytes of graphics data at 120  
dpi. The resulting figure will resemble a backslash character, "\".  
Escape Sequence:  
Hexadecimal:  
ESC  
L
6
0
128 64 32 16  
8
4
1B 4C 06 00 80 40 20 10 08 04  
High Speed 120 DPI Graphics  
ESC Y n1 n2 data  
Selects eight wire high speed double density (120 dpi) graphics for n1 + (n2 x 256)  
columns of data. Horizontally adjacent dots may not be printed.  
Example: The following escape sequence will print six bytes of graphics data at 120  
dpi. The resulting figure will resemble a backslash character, "\".  
Escape Sequence:  
Hexadecimal:  
ESC  
Y
6
0
128 64 32 16  
8
4
1B 59 06 00 80 40 20 10 08 04  
High Speed 240 DPI Graphics  
ESC Z n1 n2 data  
Selects eight wire quadruple density (240 dpi) graphics for n1 + (n2 x 256) columns  
of data. Horizontally adjacent dots may not be printed.  
Example: The following escape sequence will print six bytes of graphics data at 240  
dpi. The resulting figure will resemble a backslash character, "\".  
Escape Sequence:  
Hexadecimal:  
ESC  
Z
6
0
128 64 32 16  
8
4
1B 5A 06 00 80 40 20 10 08 04  
Page 3-25  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
m DPI Graphics  
ESC * m n1 n2 data  
Selects eight wire graphics of density m as listed in the following table for n1 + (n2 x  
256) columns of data.  
m
0
1
2
3
4
5
6
7
Density  
60 dpi (same as ESC K)  
120 dpi (same as ESC L)  
120 dpi high speed (same as ESC Y)  
240 dpi high speed (same as ESC Z)  
80 dpi  
72 dpi  
90 dpi  
144 dpi  
_______  
Example: The following escape sequence will print four bytes of graphics data at 72  
x 72 dpi. The resulting figure will resemble a square, since the horizontal and vertical  
density are the same. If some other density is chosen, the figure will resemble a  
rectangle.  
Escape Sequence:  
Hexadecimal:  
ESC  
*
5
4
0
<
<
<
<
1B 2A 05 04 00 3C 3C 3C 3C  
Page 3-26  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Printer Controls  
Bell  
BEL  
Causes the printer's bell to sound.  
Control code:  
Hexadecimal:  
BEL  
07  
Unidirectional Mode (one line)  
ESC <  
Selects unidirectional mode for the current line (until a carriage return is received).  
This will force the line to print from left to right.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 3C  
<
Unidirectional Mode  
ESC U n  
Selects unidirectional mode for n=1, or bidirectional mode for n=0. Printing is  
normally bidirectional. Unidirectional printing provides more accurate positioning,  
but causes lower throughput.  
Example: The following escape sequence will force unidirectional printing.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 55 31  
U
1
Reset  
ESC @  
Deletes all data on the current line and initializes the printer to the default settings for  
the current form.  
Restores the default horizontal tab stops. Default tab stops are set at every eighth  
column, i.e. column 8, 16, 24, 32, 40, etc.  
Resets top of form to the current position, so it is wise to be at top of form before  
performing this reset. Issuing a form feed will guarantee this.  
See the appendix on Printer Reset Conditions for more information.  
Escape Sequence:  
Hexadecimal:  
ESC @  
1B 40  
Page 3-27  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Forms and Tractors  
The FormsPro 4503 contains three sets of paper tractors (front, center, and rear). It is  
possible, via software, to change to a different set of tractors and continue printing.  
You may change to a different set of tractors by selecting a different form. The  
"Path:" value in the "Setup: FORM" menu specifies "Front", "Center", or "Rear" for  
each form that is defined. When a form is selected, the associated set of tractors is  
also automatically selected.  
Load Form  
ESC EM n  
Causes the current line to be printed, and then loads paper and form parameters for  
form n. 0³ n³ 2. If form n is already loaded, this sequence is ignored. If not, the  
current form will be unloaded, the parameters for form n will be selected, and the  
printer will go offline to wait for the operator to install the new form and place the  
printer back online. In the FormsPro 4503 the same happens unless selecting form n  
also selects a different paper path. In that case, the current form is unloaded, the  
tractors are moved to engage the new path, the new form is loaded, and printing may  
continue.  
The printer will not unload the current form if a previously printed form has not been  
torn off. In this case, the printer will go offline, sound the bell, and display the  
message "Tear Off Paper". When an operator tears off the paper and places the  
printer back online, the printer will unload the current form and continue.  
If the printer is unable to load the new form, it will sound the bell and display the  
message "No Paper to Load". A "Paper Out" error will occur and the printer will go  
offline to wait for an operator to clear the error.  
Example: The following escape sequence will load form 2.  
Escape Sequence:  
Hexadecimal:  
ESC EM  
1B 19 32  
2
Page 3-28  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Emulations  
Select Software Interface n  
ESC ESC n  
Selects the software interface n according to the table below.  
n
0
1
2
3
4
5
6
Software Interface  
Test (reserved for factory use)  
ANSI X3.64 Emulation  
Epson FX Emulation  
Bar Code Mode (optional)  
IBM Proprinter Emulation  
DEC LA120 Emulation  
TTY Emulation  
7
Printek Emulation  
?
@
Previously Selected Emulation  
Default Emulation  
Overrides the "Mode:" value in the "Setup: INTERFACE" menu.  
BarberPole" and "Mode: Hex Dump" cannot be overridden.  
"Mode:  
A numeric value for n may be specified in two different ways, with equivalent results:  
a single byte with a value of 00 to 07 hex, or a single printable ASCII character "0" to  
"7" (30 to 37 hex).  
If more than one emulation has been selected, ESC ESC ? will return to the  
previously selected emulation. This is particularly useful when the previous  
emulation is unknown. Please beware that the memory (stack) is only one level deep.  
ESC ESC @ will return to the default emulation, as specified by the "Mode:" value in  
the "Setup: INTERFACE" menu.  
This chapter describes Epson FX emulation. If a different interface is selected, the  
control codes and escape sequences described in this chapter will no longer be  
applicable.  
Example: The following escape sequences will select Printek emulation, load form  
one, and then return to the previous emulation.  
Escape Sequence:  
Hexadecimal:  
ESC ESC  
7
ESC  
L
1
ESC ESC  
?
1B 1B 07 1B 4C 01 1B 1B 3F  
Page 3-29  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
Control Codes and Escape Sequences  
Sorted Alphabetically  
BEL  
BS  
Bell  
Backspace  
CAN  
Cancel Line  
CR  
DC2  
DC3  
Carriage Return  
Cancel Condensed Mode  
Deselect Printer  
DC4  
DEL  
Cancel Double-Wide Mode (one line)  
Delete Character  
ESC ! n  
ESC #  
ESC * m n1 n2 data  
ESC - n  
ESC 0  
Master Print Mode Select  
Cancel MSB Control  
m DPI Graphics  
Underline Mode  
Select 8 LPI  
ESC 1  
ESC 2  
Set Line Spacing to 7/72"  
Select 6 LPI  
ESC 3 n  
ESC 4  
Set Line Spacing to n/216"  
Select Italic Mode  
ESC 5  
Cancel Italic Mode  
ESC 6  
ESC 7  
ESC <  
ESC =  
Enable Printing of High Symbols  
Disable Printing of High Symbols  
Unidirectional Mode (one line)  
Set MSB to 0  
ESC >  
Set MSB to 1  
ESC @  
ESC A n  
ESC B n1 n2 ... nx NUL  
ESC C NUL n  
ESC C n  
ESC D n1 n2 ... nx NUL  
ESC E  
ESC EM n  
ESC ESC n  
ESC F  
Reset  
Set Line Spacing to n/72"  
Set Vertical Tab Stops  
Set Form Length in Inches  
Set Form Length in Lines  
Set Horizontal Tab Stops  
Select Emphasized Mode  
Load Form  
Select Software Interface n  
Cancel Emphasized Mode  
Select Double-Strike Mode  
Cancel Double-Strike Mode  
Printing of Low Symbols  
Variable Distance Line Feed  
ESC G  
ESC H  
ESC I n  
ESC J n  
Page 3-30  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Epson FX Emulation  
ESC K n1 n2 data  
ESC L n1 n2 data  
ESC M  
60 DPI Graphics  
120 DPI Graphics  
Select 12 CPI  
ESC N n  
ESC O  
ESC P  
Set Perforation Skip  
Cancel Perforation Skip  
Select 10 CPI  
ESC Q n  
ESC R n  
ESC S n  
ESC SI  
ESC SO  
ESC T  
ESC U n  
ESC W n  
ESC Y n1 n2 data  
ESC Z n1 n2 data  
ESC g  
Set Right Margin  
Select International Character Set  
Select Subscript or Superscript Mode  
Select Condensed Mode  
Select Double-Wide Mode (one line)  
Cancel Subscript and Superscript Mode  
Unidirectional Mode  
Double-Wide Mode  
High Speed 120 DPI Graphics  
High Speed 240 DPI Graphics  
Select 15 CPI  
ESC j n  
ESC k n  
ESC l n  
ESC w n  
ESC x n  
ETX  
Variable Distance Reverse Line Feed  
Select Font  
Set Left Margin  
Double-High Mode  
Select Draft or Letter Quality  
End of Text  
FF  
Form Feed  
HT  
Horizontal Tab  
LF  
Line Feed  
SI  
SO  
VT  
Select Condensed Mode  
Select Double-Wide Mode (one line)  
Vertical Tab  
XOFF  
Deselect Printer  
Page 3-31  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM PROPRINTER EMULATION  
Introduction  
This section describes the control codes and escape sequences comprising IBM  
Proprinter emulation. This emulation may be selected by specifying "Mode:  
Proprinter" in the "Setup: INTERFACE" menu, or via software with the ESC ESC 4  
sequence. While this emulation is selected, control codes and escape sequences from  
other emulations are not available.  
Control codes and escape sequences are used to control printer operation. An ASCII  
control code is a single character in the range 00 hex through 1F hex, and 7F hex.  
The ESC (Escape) control code (1B hex) is used to introduce character strings called  
escape sequences, which provide an extension of the commands available with ASCII  
control codes.  
Some escape sequences accept one or more numeric parameters. If a sequence  
accepts one numeric parameter, it will be represented as "n". If a sequence accepts  
more than one numeric parameter, they will be represented as "n1 n2 ... nx".  
Since numeric parameters are always encoded in one byte, their values may range  
from 0 to 255 decimal. Please note that the value will never be represented by a  
string of ASCII decimal digits ("0" through "9"). For example, a value of 66 decimal  
would be sent as a single byte with a hex value of 42. This is equivalent to sending  
the ASCII character "B". It is entirely different than sending the two printable ASCII  
characters "66".  
If a numeric parameter is limited to a value of zero or one, it may be sent as a single  
byte with a value of 00 or 01 hex (NUL or SOH), or it may be sent as a single  
printable ASCII character "0" or "1" (30 or 31 hex).  
Spaces are used when documenting escape sequences to increase readability. The  
spaces within the sequences are for readability only; they are not part of the  
sequences themselves. Characters that appear in italics (such as "n" and "n1 n2"  
above) are not sent to the printer as is; they are used as a place holder indicating that  
some value must be supplied.  
Multiple character strings without intervening spaces typically represent control  
codes. For example, BS is the Backspace control code (08 hex), not the two  
characters "B" and "S" (42 and 53 hex). An ASCII Control Code Table is contained  
in the appendices for your convenience. If you have any doubt about how to interpret  
Page 4-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
a documented control code or escape sequence, refer to the hex representation in the  
provided example. This should clarify any ambiguity. The examples may also be  
helpful when analyzing a hex dump (see chapter 8) printed by the printer.  
Column and line numbers begin at one, not at zero. Keep this in mind when setting  
tabs, margins, etc.  
Page 4-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Control Codes and Escape Sequences  
Grouped by Function  
Communications  
Cancel Line  
CAN  
Cancels all printable text in the current print line. Does not affect any control codes  
or escape sequences.  
Control code:  
Hexadecimal:  
CAN  
18  
End of Text  
ETX  
If "ETX/ACK: On" is specified in the "Setup: INTERFACE" menu, then receipt of an  
ETX causes the printer to transmit an ACK to the host computer.  
Since the ETX may be a legal value within an escape sequence, it is the user's  
responsibility to ensure that an ETX used for data handshake is not sent within an  
escape sequence. The user must also ensure that the maximum block size or the  
number of blocks sent at one time does not exceed the input buffer size of the printer.  
ETX/ACK handshake is available only with serial I/O. It is not available when using  
the parallel interface or the coaxial/twinaxial interface.  
If character set 2 is selected, ETX will be treated as a printable character instead of an  
I/O handshake control code.  
Control code:  
Hexadecimal:  
ETX  
03  
Deselect Printer  
ESC Q n  
Deselects the printer. Use of this command is discouraged, because the printer will  
remain offline until an operator presses the ONLINE button on the control panel.  
For a Proprinter II or Proprinter III, n should be 3. For a Proprinter XL or Proprinter  
III XL, n should be 22. It does not really matter, because n will be ignored.  
Example: The following escape sequence will force the printer offline.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 51 16  
Q
22  
Page 4-3  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Character Size  
The FormsPro 4000 is capable of supporting 10, 12, 13.3, 15, 16.7, 17.14, and 20 cpi,  
but most emulations support only a subset of these. IBM Proprinter emulation  
supports 10, 12, 17.14, and 20 cpi via software, but does not support 13.3, 15 or 16.7  
cpi. Every emulation supports 10 cpi, and we consider this to be the default character  
pitch. When you use the control panel to change the "CPI:" value in the "Setup:  
FORM" menu, you are actually changing the default character pitch. When the  
printer is turned on (or reset), it will use this character pitch. You can even use a  
pitch that is not supported by your emulation, such as 13.3 cpi with IBM Proprinter  
emulation. You can override this pitch selection via software, by sending an escape  
sequence. This selects a user specified non-default pitch. For example, in IBM  
Proprinter emulation, sending ESC : will select 12 cpi. Sending DC2 will re-select 10  
cpi, and thus re-select the default character pitch that was selected in the form setup.  
Via software escape sequences, you can select any character pitch supported by the  
emulation you are using. All will print as expected, unless you select 10 cpi --  
because 10 cpi really selects the default character pitch from setup. If you really want  
10 cpi, then you must specify "CPI: 10" in the "Setup: FORM" menu. Likewise, if  
you want to use the default pitch from setup, you must not override it. Either send no  
character pitch sequences to the printer, or make sure you re-select 10 cpi via  
software.  
When you select different forms, the default character pitch from setup is selected  
along with the form. But you will not see this default pitch if it has already been  
overridden via software.  
Select 10 CPI  
DC2  
Selects 10 cpi by cancelling 12 cpi and condensed mode. If "CPI: 10" was not  
specified in the "Setup: FORM" menu, the specified default character pitch will be  
selected instead of 10 cpi.  
Control code:  
Hexadecimal:  
DC2  
12  
Select 12 CPI  
ESC :  
Selects 12 cpi (elite mode). Condensed mode is unaffected. The resulting character  
spacing will be 12 cpi, or if condensed mode is also selected, 20 cpi.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 3A  
:
Page 4-4  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Select Condensed Mode  
(or)  
SI  
ESC SI  
Selects condensed mode. The resulting character spacing will be 17.14 cpi if 10 cpi  
was selected, or 20 cpi if 12 cpi was selected.  
Control code:  
Hexadecimal:  
SI  
0F  
Escape Sequence:  
Hexadecimal:  
ESC SI  
1B 0F  
Select Double-Wide Mode (one line)  
(or)  
SO  
ESC SO  
Selects double-wide mode for one line. Double-wide mode doubles the width of all  
characters, but does not affect character height. This mode is cancelled by a carriage  
return or DC4.  
Control code:  
Hexadecimal:  
SO  
0E  
Escape Sequence:  
Hexadecimal:  
ESC SO  
1B 0E  
Cancel Double-Wide Mode (one line)  
DC4  
Cancels double-wide mode selected by SO or ESC SO. Does not cancel double-wide  
mode selected by ESC W or ESC !.  
Control code:  
Hexadecimal:  
DC4  
14  
Double-Wide Mode  
ESC W n  
Selects double-wide mode for n=1, or cancels for n=0. Double-wide mode doubles  
the width of all characters, but does not affect character height.  
Example: The following escape sequence will select double-wide mode.  
Escape Sequence:  
Hexadecimal:  
ESC W  
1B 57 31  
1
Page 4-5  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Double-High Mode  
ESC [ @ n1 n2 m1 m2 m3 m4  
Selects single or double-high mode, single or double-wide mode, and single or double  
line feeds.  
The two bytes n1 and n2 specify how many mode bytes (m1, m2, m3, m4) follow.  
Theoretically, there may be n1 + (n2 x 256) mode bytes. Actually, n2 must be 0, and  
n1 may be 0 to 4, but is normally 4.  
m1 and m2 must be 0 (NUL). m3 and m4 may be set to the values in the following  
tables.  
m3  
0
hex  
00  
01  
02  
10  
11  
12  
20  
21  
22  
character height and line spacing  
no change  
1
line feeds unchanged, single-high characters  
line feeds unchanged, double-high characters  
single line feeds, character height unchanged  
single line feeds, single-high characters  
single line feeds, double-high characters  
double line feeds, character height unchanged  
double line feeds, single-high characters  
double line feeds, double-high characters  
2
16  
17  
18  
32  
33  
34  
m4  
1
2
hex  
01  
02  
character width  
single-wide characters  
double-wide characters  
Example: The following escape sequence will select double-wide and double-high  
mode, with double line feeds.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
@
4
0
0
0
34  
2
1B 5B 40 04 00 00 00 22 02  
Select Subscript or Superscript Mode  
ESC S n  
Selects subscript mode for n=1, or superscript mode for n=0. This will print  
characters about half the normal height, in the bottom or top half of the normal  
character cell.  
Example: The following escape sequence will select superscript mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 53 30  
S
0
Cancel Subscript and Superscript Mode  
ESC T  
Cancels subscript and superscript mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 54  
T
Page 4-6  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Character Attributes  
Select Emphasized Mode  
ESC E  
Selects emphasized mode. This makes characters bolder by printing an extra dot to  
the right of each dot normally found in the character matrix. This will cut the print  
speed in half, but will not require an additional pass of the print head. Overrides the  
"Impact:" value in the "Setup: FORM" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 45  
E
Cancel Emphasized Mode  
ESC F  
Cancels emphasized mode. Overrides the "Impact:" value in the "Setup: FORM"  
menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 46  
F
Select Double-Strike Mode  
ESC G  
Selects double-strike mode. This makes text bolder by printing it twice. This will cut  
the print speed in half, because an additional pass of the print head will be required.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 47  
G
Cancel Double-Strike Mode  
ESC H  
Cancels double-strike mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 48  
H
Underline Mode  
ESC - n  
Selects underline mode for n=1, or cancels for n=0. This mode provides continuous  
underlining for all characters, including spaces.  
Example: The following escape sequence will turn underlining on.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 2D 31  
-
1
Page 4-7  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Character Sets  
Select Character Set 1  
ESC 7  
Selects character set 1. Disables printing of character values 0 through 31 decimal,  
and 128 through 159 decimal, so these characters will be treated as control codes.  
Overrides the "Chars:" value in the "Setup: INTERFACE" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 37  
7
Select Character Set 2  
ESC 6  
Selects character set 2. Enables printing of character values 0 through 31 decimal if  
they are not used as control codes. Enables printing of character values 128 through  
159 decimal, so these characters will not be treated as control codes. Overrides the  
"Chars:" value in the "Setup: INTERFACE" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 36  
6
Print Single Character  
ESC ^ n  
Prints the character n from the all characters chart. This sequence may be used to  
print a character that is normally treated as a control code.  
Example: The following escape sequence will print a left arrow. This character is  
normally not printable, since it is treated as the ESC control code.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 5E 1B  
^
ESC  
Print Characters  
ESC \ n1 n2  
Prints the next n1 + (n2 x 256) characters from the all characters chart. This sequence  
may be used to print characters that are normally treated as a control codes.  
Example: The following escape sequence will print an up arrow, a down arrow, a  
right arrow, and a left arrow.  
Escape Sequence:  
Hexadecimal:  
ESC  
\
4
0
CAN EM SUB ESC  
1B 5C 04 00 18 19 1A 1B  
Page 4-8  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Select Print Mode  
ESC I n  
Selects print mode n according to the following chart. Overrides the "Font:" value in  
the "Setup: FORM" menu.  
n
0
1
2
3
Print Mode  
Draft  
Draft 12 cpi  
Letter Quality  
Letter Quality  
Example: The following escape sequence will select the IBM Proprinter letter quality  
font.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 49 03  
I
3
Line Pitch  
Select 8 LPI  
ESC 0  
Sets the line spacing to 1/8 of an inch per line (8 lpi). Overrides the "LPI:" value in  
the "Setup: FORM" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 30  
0
Set Line Spacing to 7/72"  
ESC 1  
Sets the line spacing to 7/72 of an inch per line. Since the distance between print  
head wires is 1/72 of an inch, this is equivalent to setting seven wire spacing. This is  
not particularly useful for text, but may be useful for graphics if 7-bit graphics data is  
being sent. Overrides the "LPI:" value in the "Setup: FORM" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 31  
1
Start Line Spacing  
ESC 2  
Sets the line spacing to the value selected by ESC A n. Overrides the "LPI:" value in  
the "Setup: FORM" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 32  
2
Page 4-9  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Set Line Spacing to n/216"  
ESC 3 n  
Sets the line spacing to n/216 of an inch per line. 0³ n³ 255. Overrides the "LPI:"  
value in the "Setup: FORM" menu.  
NOTE: The actual resolution of the FormsPro 4000 paper stepper motor is 1/288 of  
an inch. When spacing is specified in 1/216 of an inch, the printer will actually move  
paper to the nearest 1/288 of an inch.  
Example: The following escape sequence will set line spacing to one half inch.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 33 6C  
3
108  
Set Line Spacing to n/72"  
ESC A n  
Sets the line spacing to n/72 of an inch per line. 0³ n³ 255. Since the distance  
between print head wires is 1/72 of an inch, this is equivalent to setting n wire  
spacing. This spacing is stored but does not take effect until ESC 2 is received.  
Overrides the "LPI:" value in the "Setup: FORM" menu.  
Example: The following escape sequence will set line spacing to 8/72 of an inch, for  
use with eight wire graphics.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 41 08  
A
8
Page 4-10  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Horizontal Position  
Carriage Return  
CR  
Causes the current line to be printed, and then sets the current print position to the left  
margin. If "Auto LF: On" is selected in the "Setup: INTERFACE" menu, a line feed  
will also be performed.  
Control code:  
Hexadecimal:  
CR  
0D  
Backspace  
BS  
Causes the current line to be printed, and then moves the current print position one  
space to the left. The actual distance moved depends on the current character  
spacing. Backspacing can be done up to, but not beyond, the left margin.  
Control code:  
Hexadecimal:  
BS  
08  
Vertical Position  
Line Feed  
LF  
Causes the current line to be printed, and then advances the paper one line at the  
current line spacing. If "Auto CR: On" is selected in the "Setup: INTERFACE"  
menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
LF  
0A  
Variable Distance Line Feed  
ESC J n  
Causes the current line to be printed, and then performs a single line feed of n/216ths  
of an inch. 0³ n³ 255. Does not change the current line spacing. If "Auto CR: On" is  
selected in the "Setup: INTERFACE" menu, a carriage return will also be performed.  
Example: The following escape sequence will advance the paper one half inch.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4A 6C  
J
108  
Page 4-11  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Form Length and Form Feed  
Form length is the distance from the top of the form to the bottom of the form. Form  
length may be specified either in inches, or in lines. A form feed will advance the  
paper to the top of the next form. Some programs do not send form feeds. Instead,  
they count line feeds, and send the appropriate number of line feeds to fill out the  
page. The usual rational is that the program is then in complete control of form  
length, and will work on any printer without requiring the correct form length to be  
set. However, the correct form length should always be set on the FormsPro 4000.  
Even if the program does not use form feeds, the printer will automatically scroll a  
completed form up to the tear bar to be torn off. This automatic scroll is based upon  
form length. The easiest way to set form length is via the "Length:" value in the  
"Setup: FORM" menu, so it will be correctly set for everyone using the form. If  
correct form length cannot be guaranteed from SETUP, then each program should set  
the correct form length.  
Set Form Length in Lines  
ESC C n  
Sets the form length to n lines at the current line spacing. 1³ n³ 255. Maximum form  
length is 37.9 inches. Invalid form lengths will be ignored. Overrides the "Length:"  
value in the "Setup: FORM" menu.  
For example, an 11 inch form contains 66 lines at 6 LPI, but 88 lines at 8 LPI. If line  
spacing is changed after setting the form length, the physical form length (in inches)  
will not be changed.  
Resets top of form to the current position, so it is wise to be at top of form before  
setting form length. Issuing a form feed will guarantee this. Vertical margins are  
cleared.  
Example: The following escape sequence will set form length to 66 lines. At 6 LPI,  
this will result in a form length of 11 inches.  
Escape sequence:  
Hexadecimal:  
ESC  
1B 43 42  
C
66  
Set Form Length in Inches  
ESC C NUL n  
Sets the form length to n inches. 1³ n³ 37. Maximum form length is 37.9 inches.  
Invalid form lengths will be ignored. Overrides the "Length:" value in the "Setup:  
FORM" menu.  
Resets top of form to the current position, so it is wise to be at top of form before  
setting form length. Issuing a form feed will guarantee this. Vertical margins are  
cleared.  
Page 4-12  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Example: The following escape sequence will set form length to 11 inches,  
regardless of what line spacing is set.  
Escape sequence:  
Hexadecimal:  
ESC C NUL 11  
1B 43 00 0B  
Form Feed  
FF  
Causes the current line to be printed, and then advances the paper to the top of the  
next form. If a top margin is set, printing will continue at the top margin. The "FF at  
TOF: No" value in the "Setup: INTERFACE" menu allows a form feed to be ignored  
if the paper is already at top of form. If "Auto CR: On" is selected in the "Setup:  
INTERFACE" menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
FF  
0A  
Set Top of Form  
ESC 4  
Sets top of form to the current position.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 34  
4
Page 4-13  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Horizontal Tabs  
Default horizontal tab stops are set at every eighth column, i.e. column 9, 17, 25, 33,  
41, etc. The default tab stops are associated with columns, not absolute physical  
positions. Changing character spacing will change the physical position of the default  
tab stops.  
User defined horizontal tab stops are associated with absolute physical positions, not  
with columns. The tab stops are set relative to the current character spacing, but  
subsequent changes in character spacing will not affect the physical position of the  
tab stops (except that the position will be rounded up to the closest character  
boundary).  
Horizontal Tab  
HT  
Advances to the next horizontal tab stop. If no tab stop exists between the active  
column and the right margin, the HT will be ignored. Default tab stops are set at  
every eighth column, i.e. column 9, 17, 25, 33, 41, etc. Different tab stops may be set  
with ESC D.  
Control code:  
Hexadecimal:  
HT  
09  
Set Horizontal Tab Stops  
ESC D n1 n2 ... nx NUL  
Clears all currently set horizontal tab stops, and sets new tab stops at column n1, n2,  
n3, etc. 1³ n³ 255. The tab stops must be presented in ascending order. The NUL  
character, or any tab stop value less than the preceding one, terminates the sequence.  
The tab stops are set relative to the current character spacing, but subsequent changes  
in character spacing will not affect the physical position of the tab stops (except that  
the position will be rounded up to the closest character boundary). The leftmost  
column is column one.  
Default tab stops are set at every eighth column, i.e. column 9, 17, 25, 33, 41, etc.  
The tab stops set by ESC D will replace the default tab stops. ESC D NUL will clear  
all tab stops, leaving no tab stops set. The default tab stops are restored by ESC R.  
Example: The following escape sequence will set horizontal tab stops at half inch  
intervals, if character spacing is currently 10 cpi.  
Escape Sequence:  
Hexadecimal:  
ESC  
D
6
11 16 21 26 31 NUL  
1B 44 06 0B 10 15 1A 1F 00  
Page 4-14  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Vertical Tabs  
Vertical tab stops are associated with absolute physical positions, not with lines. The  
tab stops are set relative to the current line spacing, but subsequent changes in line  
spacing will not affect the physical position of the tab stops.  
Vertical Tab  
VT  
Causes the current line to be printed, and then advances the paper to the next vertical  
tab stop. If no vertical tab stops are set, then a line feed is done instead. If "Auto CR:  
On" is selected in the "Setup: INTERFACE" menu, a carriage return will also be  
performed.  
Control code:  
Hexadecimal:  
VT  
0B  
Set Vertical Tab Stops  
ESC B n1 n2 ... nx NUL  
Clears all currently set vertical tab stops, and sets new tab stops at line n1, n2, n3, etc.  
1³ n³ 255. The tab stops must be presented in ascending order. The NUL character,  
or any tab stop value less than the preceding one, terminates the sequence. The tab  
stop settings are based on the current line spacing. Changing the line spacing after  
the tab stops are set will not affect the position of the tab stops. The first line is line  
one.  
ESC B NUL or ESC R will clear all currently set vertical tab stops, leaving no  
vertical tab stops set.  
Example: The following escape sequence will set vertical tab stops at line 7, 13, and  
25. If line spacing is currently 6 lpi, this will result in tab stops one inch, two inches,  
and four inches from the top of the form.  
Escape Sequence:  
Hexadecimal:  
ESC  
B
7
13 25 NUL  
1B 42 07 0D 19 00  
Horizontal and Vertical Tabs  
Reset Horizontal and Vertical Tab Stops  
ESC R  
Clears all currently set horizontal tab stops, and returns to default horizontal tab stops.  
Default horizontal tab stops are set at every eighth column, i.e. column 9, 17, 25, 33,  
41, etc. Clears all currently set vertical tab stops.  
Page 4-15  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 52  
R
Page 4-16  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Horizontal Margins  
Printing is allowed only within the left and right margins. Exceeding the right margin  
will cause line wrap, setting the current print position to the left margin and  
advancing the paper one line.  
Set Left and Right Margin  
ESC X n1 n2  
Sets the left margin to column n1 and the right margin to column n2 at the current  
character spacing. 0³ n1³ 255, 0³ n2³ 255. If character spacing is changed after  
setting the margins, the position of the margins will not change.  
The left margin is inclusive, but the right margin is exclusive. For example, a left  
margin at column 11 still allows a character to be printed in column 11. A right  
margin at column 76 allows a character to be printed in column 75, but not in column  
76.  
The leftmost column is column one. If n1 or n2 is zero, the corresponding margin is  
not changed. The left margin must be left of the right margin and £13.4 inches. The  
right margin must be right of the left margin and £13.6 inches. Invalid margins will  
be ignored. Overrides the "Left Mar:" and "Right Mar:" values in the "Setup:  
FORM" menu.  
Example: The following escape sequence will set a one inch left margin, and will set  
a right margin 7.5 inches from the left edge of the form, if character spacing is  
currently 10 cpi. For a standard 8.5 inch wide form, this would result in a one inch  
right margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
X
11 76  
1B 58 0B 4C  
Page 4-17  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Vertical Margins  
Printing is allowed only within the top and bottom margins. Exceeding the bottom  
margin will set the current line to the top margin of the next form.  
Set Perforation Skip  
ESC N n  
Sets the perforation skip distance to n lines at the current line spacing. 1³ n³ 255. If  
line spacing is changed after setting the skip distance, the skip distance will not be  
changed.  
The skip distance is split between the top and bottom margins, so the perforation will  
be centered in the resulting white space. The specified skip distance must be less than  
the form length, or the command will be ignored. Perforation skip is canceled by  
ESC O, ESC C n or ESC C NUL n. Overrides the "Top Mar:" and "Btm Mar:" values  
in the "Setup: FORM" menu.  
Example: The following escape sequence will set a two inch perforation skip  
distance, if the current line spacing is 6 lpi. This will result in a one inch top and  
bottom margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4E 0C  
N
12  
Cancel Perforation Skip  
ESC O  
Cancels perforation skip. This is equivalent to having no top and bottom margin.  
Overrides the "Top Mar:" and "Btm Mar:" values in the "Setup: FORM" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4F  
O
Page 4-18  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Graphics  
Graphics mode gives the user complete control over every dot position on the paper.  
Graphics may be printed with various horizontal densities from 60 to 240 dpi, and a  
vertical density of 72 dpi.  
Each byte of graphics data represents a vertical column of eight dots, with the MSB  
(most significant bit) corresponding to the top wire of the print head. Turning a bit on  
causes a dot to be printed. The bit values corresponding to each wire of the print head  
are shown below:  
wire 1  
wire 2  
wire 3  
wire 4  
wire 5  
wire 6  
wire 7  
wire 8  
128 (80 hex)  
64 (40 hex)  
32 (20 hex)  
16 (10 hex)  
8
4
2
1
(08 hex)  
(04 hex)  
(02 hex)  
(01 hex)  
The appropriate bit values are added together to fire the desired wires. For example,  
a byte of graphics data with the value 128 (80 hex) will fire the top wire, wire 1. A  
value of 192 (C0 hex) will fire the top two wires, wires 1 and 2. A value of 11 (0B  
hex) will fire wires 5, 7 and 8.  
Each graphics sequence contains two bytes (n1 and n2) that specify how many bytes  
of graphics data follow. The first byte, n1, can specify values up to 255. If that is  
sufficient, then n2 is set to zero. For values greater than 255, n2 comes into play.  
The n2 byte specifies multiples of 256. For example, to specify 520 bytes of graphics  
data, n1 = 8 and n2 = 2. The bytes of graphics data are strung together to create a  
graphics line that is eight dots high, and n1 + (n2 x 256) dots long. Be sure to provide  
the amount of graphics data that you specify, because the printer will not leave  
graphics mode until it has accepted the specified number of data bytes.  
If "Data Bits: 7" is specified in the "Setup: INTERFACE" menu, beware of potential  
problems in graphics mode. Since the MSB (most significant bit) will always be  
turned off, it will not be possible to fire the top wire of the print head. Worse yet, the  
value of n1 or n2 may be changed. For example, if n1 specifies 200 bytes of data,  
and its MSB is turned off, the printer will only expect 72 bytes of data. It will exit  
graphics mode, and then try to print the remaining 128 bytes of graphics data as  
normal text characters. The result will surely not be pretty. To avoid such problems,  
the use of an 8-bit I/O interface for printing graphics is highly recommended.  
The normal graphics modes allow every dot to be printed. High speed graphics will  
print twice as fast, but will not allow consecutive dots to be printed.  
Page 4-19  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
60 DPI Graphics  
ESC K n1 n2 data  
Selects eight wire single density (60 dpi) graphics for n1 + (n2 x 256) columns of  
data.  
Example: The following escape sequence will print six bytes of graphics data at 60  
dpi. The resulting figure will resemble a backslash character, "\".  
Escape Sequence:  
Hexadecimal:  
ESC  
K
6
0
128 64 32 16  
8
4
1B 4B 06 00 80 40 20 10 08 04  
120 DPI Graphics  
ESC L n1 n2 data  
Selects eight wire double density (120 dpi) graphics for n1 + (n2 x 256) columns  
data.  
Example: The following escape sequence will print six bytes of graphics data at 120  
dpi. The resulting figure will resemble a backslash character, "\".  
Escape Sequence:  
Hexadecimal:  
ESC  
L
6
0
128 64 32 16  
8
4
1B 4C 06 00 80 40 20 10 08 04  
High Speed 120 DPI Graphics  
ESC Y n1 n2 data  
Selects eight wire high speed double density (120 dpi) graphics for n1 + (n2 x 256)  
columns of data. Horizontally adjacent dots may not be printed.  
Example: The following escape sequence will print six bytes of graphics data at 120  
dpi. The resulting figure will resemble a backslash character, "\".  
Escape Sequence:  
Hexadecimal:  
ESC  
Y
6
0
128 64 32 16  
8
4
1B 59 06 00 80 40 20 10 08 04  
High Speed 240 DPI Graphics  
ESC Z n1 n2 data  
Selects eight wire quadruple density (240 dpi) graphics for n1 + (n2 x 256) columns  
of data. Horizontally adjacent dots may not be printed.  
Example: The following escape sequence will print six bytes of graphics data at 240  
dpi. The resulting figure will resemble a backslash character, "\".  
Escape Sequence:  
Hexadecimal:  
ESC  
Z
6
0
128 64 32 16  
8
4
1B 5A 06 00 80 40 20 10 08 04  
Page 4-20  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Printer Controls  
Bell  
BEL  
Causes the printer's bell to sound.  
Control code:  
Hexadecimal:  
BEL  
07  
Unidirectional Mode  
ESC U n  
Selects unidirectional mode for n=1, or bidirectional mode for n=0. Printing is  
normally bidirectional. Unidirectional printing provides more accurate positioning,  
but causes lower throughput.  
Example: The following escape sequence will force unidirectional printing.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 55 31  
U
1
Automatic Line Feed  
ESC 5 n  
Selects automatic line feed mode for n=1, or cancels for n=0. Automatic line feed  
mode causes the printer to automatically perform a line feed (LF) for each carriage  
return (CR) it receives. Overrides the "Auto LF:" value in the "Setup: INTERFACE"  
menu.  
Example: The following escape sequence will select automatic line feed mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 35 31  
5
1
Page 4-21  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Emulations  
Select Software Interface n  
ESC ESC n  
Selects the software interface n according to the table below.  
n
0
1
2
3
4
5
6
Software Interface  
Test (reserved for factory use)  
ANSI X3.64 Emulation  
Epson FX Emulation  
Bar Code Mode (optional)  
IBM Proprinter Emulation  
DEC LA120 Emulation  
TTY Emulation  
7
Printek Emulation  
?
@
Previously Selected Emulation  
Default Emulation  
Overrides the "Mode:" value in the "Setup: INTERFACE" menu.  
BarberPole" and "Mode: Hex Dump" cannot be overridden.  
"Mode:  
A numeric value for n may be specified in two different ways, with equivalent results:  
a single byte with a value of 00 to 07 hex, or a single printable ASCII character "0" to  
"7" (30 to 37 hex).  
If more than one emulation has been selected, ESC ESC ? will return to the  
previously selected emulation. This is particularly useful when the previous  
emulation is unknown. Please beware that the memory (stack) is only one level deep.  
ESC ESC @ will return to the default emulation, as specified by the "Mode:" value in  
the "Setup: INTERFACE" menu.  
This chapter describes IBM Proprinter emulation. If a different interface is selected,  
the control codes and escape sequences described in this chapter will no longer be  
applicable.  
Example: The following escape sequences will select Printek emulation, load form  
one, and then return to the previous emulation.  
Escape Sequence:  
Hexadecimal:  
ESC ESC  
7
ESC  
L
1
ESC ESC  
?
1B 1B 07 1B 4C 01 1B 1B 3F  
Page 4-22  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
Control Codes and Escape Sequences  
Sorted Alphabetically  
BEL  
BS  
Bell  
Backspace  
CAN  
Cancel Line  
CR  
DC2  
Carriage Return  
Select 10 CPI  
DC4  
ESC - n  
Cancel Double-Wide Mode (one line)  
Underline Mode  
ESC 0  
Select 8 LPI  
ESC 1  
ESC 2  
Set Line Spacing to 7/72"  
Start Line Spacing  
ESC 3 n  
ESC 4  
Set Line Spacing to n/216"  
Set Top of Form  
ESC 5 n  
ESC 6  
ESC 7  
Automatic Line Feed  
Select Character Set 2  
Select Character Set 1  
Select 12 CPI  
ESC :  
ESC A n  
ESC B n1 n2 ... nx NUL  
ESC C NUL n  
ESC C n  
ESC D n1 n2 ... nx NUL  
ESC E  
ESC ESC n  
ESC F  
ESC G  
Set Line Spacing to n/72"  
Set Vertical Tab Stops  
Set Form Length in Inches  
Set Form Length in Lines  
Set Horizontal Tab Stops  
Select Emphasized Mode  
Select Software Interface n  
Cancel Emphasized Mode  
Select Double-Strike Mode  
Cancel Double-Strike Mode  
Select Print Mode  
ESC H  
ESC I n  
ESC J n  
ESC K n1 n2 data  
ESC L n1 n2 data  
ESC N n  
ESC O  
ESC Q n  
ESC R  
ESC S n  
ESC SI  
Variable Distance Line Feed  
60 DPI Graphics  
120 DPI Graphics  
Set Perforation Skip  
Cancel Perforation Skip  
Deselect Printer  
Reset Horizontal and Vertical Tab Stops  
Select Subscript or Superscript Mode  
Select Condensed Mode  
Select Double-Wide Mode (one line)  
ESC SO  
Page 4-23  
Download from Www.Somanuals.com. All Manuals Search And Download.  
IBM Proprinter Emulation  
ESC T  
ESC U n  
ESC W n  
ESC X n1 n2  
ESC Y n1 n2 data  
ESC Z n1 n2 data  
ESC [ @ n1 n2 m1 m2 m3 m4  
Cancel Subscript and Superscript Mode  
Unidirectional Mode  
Double-Wide Mode  
Set Left and Right Margin  
High Speed 120 DPI Graphics  
High Speed 240 DPI Graphics  
Double-High Mode  
ESC \ n1 n2  
Print Characters  
ESC ^ n  
ETX  
FF  
Print Single Character  
End of Text  
Form Feed  
HT  
Horizontal Tab  
LF  
Line Feed  
SI  
SO  
VT  
Select Condensed Mode  
Select Double-Wide Mode (one line)  
Vertical Tab  
Page 4-24  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 EMULATION  
Introduction  
This section describes the control codes and escape sequences comprising DEC  
LA120 emulation. This emulation may be selected by specifying "Mode: LA120" in  
the "Setup: INTERFACE" menu, or via software with the ESC ESC 5 sequence.  
While this emulation is selected, control codes and escape sequences from other  
emulations are not available.  
Control codes and escape sequences are used to control printer operation. An ASCII  
control code is a single character in the range 00 hex through 1F hex, and 7F hex.  
The ESC (Escape) control code (1B hex) is used to introduce character strings called  
escape sequences, which provide an extension of the commands available with ASCII  
control codes.  
The LA120 control codes and escape sequences follow the standards of the ANSI  
X3.64 specification. Many ANSI escape sequences begin with a two character  
Control Sequence Introducer (CSI), Escape Left Square Bracket (ESC [, 1B 5B hex).  
If 8-bit data is selected via control panel setup, these two characters may be replaced  
by a single character CSI, 9B hex. The sequences are always documented in this  
section with the two character CSI (ESC [), because this format seems to be much  
more common, and works equally well with 7-bit or 8-bit data.  
Some escape sequences accept one or more numeric parameters. A numeric  
parameter is a decimal number represented by a string of ASCII decimal digits ("0"  
through "9"). Leading zeros may be supplied, but are not necessary. Due to  
implementation constraints, the largest value that can be accepted is decimal 255.  
Larger values will be treated as zero. Omitting a numeric parameter is equivalent to  
supplying a value of zero.  
If a sequence accepts one numeric parameter, it will be represented as "n". If a  
sequence accepts more than one numeric parameter, they will be represented as "n1;  
n2; ... nx". Note that multiple numeric parameters are separated by a semicolon.  
Most LA120 escape sequences will assume one of the following formats:  
ESC f  
(no numeric parameters)  
ESC n f  
(one numeric parameter)  
ESC n1; n2; ... nx f  
(two or more numeric parameters)  
Page 5-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
The "f" at the end of the escape sequence represents the final character. It terminates  
the sequence, and specifies the function to be performed.  
Spaces are used when documenting escape sequences to increase readability. The  
spaces within the sequences are for readability only; they are not part of the  
sequences themselves. Characters that appear in italics (such as "n" and "f" above)  
are not sent to the printer as is; they are used as a place holder indicating that some  
value must be supplied.  
Multiple character strings without intervening spaces typically represent control  
codes. For example, BS is the Backspace control code (08 hex), not the two  
characters "B" and "S" (42 and 53 hex). An ASCII Control Code Table is contained  
in the appendices for your convenience. If you have any doubt about how to interpret  
a documented control code or escape sequence, refer to the hex representation in the  
provided example. This should clarify any ambiguity. The examples may also be  
helpful when analyzing a hex dump (see chapter 8) printed by the printer.  
Some escape sequences refer to the active column or active line. The active column  
is the column where the next character will be printed. Printing a character or a space  
will increment the active column. The active line is the line where the next character  
will be printed. A line feed will increment the active line. Column and line numbers  
begin at one, not at zero. Keep this in mind when setting tabs, margins, etc.  
Page 5-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Control Codes and Escape Sequences  
Grouped by Function  
Communications  
Null  
NUL  
DEL  
ETX  
This control code is ignored by the printer.  
Control code:  
Hexadecimal:  
NUL  
00  
Delete  
This control code is ignored by the printer.  
Control code:  
Hexadecimal:  
DEL  
7F  
End of Text  
If "ETX/ACK: On" is specified in the "Setup: INTERFACE" menu, then receipt of an  
ETX causes the printer to transmit an ACK to the host computer.  
Since the ETX may be a legal value within an escape sequence, it is the user's  
responsibility to ensure that an ETX used for data handshake is not sent within an  
escape sequence. The user must also ensure that the maximum block size or the  
number of blocks sent at one time does not exceed the input buffer size of the printer.  
ETX/ACK handshake is available only with serial I/O. It is not available when using  
the parallel interface or the coaxial/twinaxial interface.  
Control code:  
Hexadecimal:  
ETX  
03  
Page 5-3  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Character Size  
The FormsPro 4000 is capable of supporting 10, 12, 13.3, 15, 16.7, 17.14, and 20 cpi,  
but most emulations support only a subset of these. LA120 emulation supports 10,  
12, 13.3, and 16.7 cpi via software, but does not support 15, 17.14, or 20 cpi. Every  
emulation supports 10 cpi, and we consider this to be the default character pitch.  
When you use the control panel to change the "CPI:" value in the "Setup: FORM"  
menu, you are actually changing the default character pitch. When the printer is  
turned on (or reset), it will use this character pitch. You can even use a pitch that is  
not supported by your emulation, such as 15 cpi with LA120 emulation. You can  
override this pitch selection via software, by sending an escape sequence. This  
selects a user specified non-default pitch. For example, in LA120 emulation, sending  
ESC [2w will select 12 cpi. Sending ESC [w will re-select 10 cpi, and thus re-select  
the default character pitch that was selected in the form setup.  
Via software escape sequences, you can select any character pitch supported by the  
emulation you are using. All will print as expected, unless you select 10 cpi --  
because 10 cpi really selects the default character pitch from setup. If you really want  
10 cpi, then you must specify "CPI: 10" in the "Setup: FORM" menu. Likewise, if  
you want to use the default pitch from setup, you must not override it. Either send no  
character pitch sequences to the printer, or make sure you re-select 10 cpi via  
software.  
When you select different forms, the default character pitch from setup is selected  
along with the form. But you will not see this default pitch if it has already been  
overridden via software.  
Set Character Spacing  
ESC [ n w  
Sets the character spacing as specified in the following table. Omitting n is  
equivalent to specifying zero.  
n
0
1
2
3
4
5
6
7
8
character pitch  
10 cpi  
10 cpi  
12 cpi  
13.3 cpi  
16.74 cpi  
5 cpi  
6 cpi  
6.67 cpi  
8.37 cpi  
Overrides the "CPI:" value in the "Setup: FORM" menu.  
Page 5-4  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Example: The following escape sequence will select 10 cpi character spacing. If  
"CPI: 10" was not specified in the "Setup: FORM" menu, the specified default  
character pitch will be selected instead of 10 cpi.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 5B 77  
[
w
Example: The following escape sequence will select 12 cpi character spacing.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
2
w
1B 5B 32 77  
Character Attributes  
Select Graphic Rendition  
ESC [ n m  
Selects the graphic rendition n from the following table.  
n
0
Rendition  
Normal  
1
3
4
Emphasized  
Italic  
Underline  
For italic mode to work correctly, an Epson FX font must be selected (check the  
"Font:" value in the "Setup: FORM" menu). The other available fonts do not include  
italic characters.  
Example: The following escape sequence will select emphasized mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
m
1B 5B 31 6D  
Page 5-5  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Character Sets  
Select International Character Set  
ESC ( a  
Selects the international character set as specified by the character a in the following  
table. Overrides the "Lang:" value in the "Setup: FORM" menu.  
a
A
B
C
E
Character Set  
United Kingdom  
United States of America  
Sweden  
Denmark  
H
K
R
Sweden  
Germany  
France  
The actual character substitutions are shown in the "International Character Mapping"  
table below. For this to work correctly, an Epson FX font must be selected (check the  
"Font:" value in the "Setup: FORM" menu).  
35 36 64 91 92 93 94 96 123 124 125 126  
USA  
#
#
#
£
#
#
#
$
$
$
$
$
¤
$
$
$
@
à
§
@
@
É
@
@
@
[
°
Ä
[
Æ
Ä
°
\
ç
Ö
\
Ø
Ö
\
Ñ
¥
]
§
Ü
]
Å
Å
é
^
^
^
^
^
Ü
^
^
^
`
`
`
`
`
é
ù
`
{
é
ä
{
æ
ä
à
¨
_
ù
ö
_
ø
ö
ò
ñ
_
}
è
ü
}
å
å
è
}
}
˜
¨
ß
˜
˜
ü
ì
France  
Germany  
England  
Denmark  
Sweden  
Italy  
Spain  
Japan  
PTS  
#
¡
[
¿
]
˜
˜
`
{
Example: The following escape sequence will select the German character set.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 28 4B  
(
K
Page 5-6  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Line Pitch  
Set Line Spacing  
ESC [ n z  
Sets the line spacing as specified in the following table. Omitting n is equivalent to  
specifying zero.  
n
0
1
2
3
4
5
6
line pitch  
6 lpi  
6 lpi  
8 lpi  
12 lpi  
2 lpi  
3 lpi  
4 lpi  
Overrides the "LPI:" value in the "Setup: FORM" menu.  
Example: The following escape sequence will set line spacing to 1/6 of an inch per  
line (6 lpi).  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 5B 7A  
[
z
Example: The following escape sequence will set line spacing to 1/8 of an inch per  
line (8 lpi).  
Escape Sequence:  
Hexadecimal:  
ESC  
[
2
z
1B 5B 32 7A  
Page 5-7  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Horizontal Position  
Carriage Return  
CR  
Causes the current line to be printed, and then sets the current print position to the left  
margin. If "Auto LF: On" is selected in the "Setup: INTERFACE" menu, a line feed  
will also be performed.  
Control code:  
Hexadecimal:  
CR  
0D  
Backspace  
BS  
Causes the current line to be printed, and then moves the current print position one  
space to the left. The actual distance moved depends on the current character  
spacing. Backspacing can be done up to, but not beyond, the left margin.  
Control code:  
Hexadecimal:  
BS  
08  
Absolute Horizontal Tab  
ESC [ n `  
Sets the current print position to column n. The actual position will depend on the  
current character spacing. If n is less than the left margin, the active column will be  
set to the left margin. If n is greater than the right margin, then a line feed will be  
performed and the active column will be set to the left margin.  
Example: The following escape sequence will set the active column to column 65.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
6
5
`
1B 5B 36 35 60  
Relative Horizontal Tab  
ESC [ n a  
Advances the current print position by n columns. The actual distance moved will  
depend on the current character spacing. Equivalent to sending n spaces (SP).  
Example: The following escape sequence will advance the active column by 10  
columns. If current character spacing is 10 cpi, this will cause the print position to  
move one inch to the right.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
0
a
1B 5B 31 30 61  
Page 5-8  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Vertical Position  
Line Feed  
(or)  
LF  
IND  
(or)  
ESC D  
Causes the current line to be printed, and then advances the paper one line at the  
current line spacing. If "Auto CR: On" is selected in the "Setup: INTERFACE"  
menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
LF  
0A  
Control code:  
Hexadecimal:  
IND  
84  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 44  
D
Absolute Vertical Tab  
ESC [ n d  
Sets the current line to line n of the current form. The actual position will depend on  
the current line spacing.  
Example: The following escape sequence will set the active line to line 12.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
2
d
1B 5B 31 32 64  
Relative Vertical Tab  
ESC [ n e  
Advances the active line by n lines. The actual distance moved will depend on the  
current line spacing. Equivalent to sending n line feeds (LF).  
Example: The following escape sequence will advance the active line by 12 lines. If  
current line spacing is 6 lpi, this will cause the paper to advance one inch.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
2
e
1B 5B 31 32 65  
Page 5-9  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Horizontal and Vertical Position  
New Line  
(or)  
NEL  
ESC E  
Causes the current line to be printed, and then sets the current print position to the left  
margin and performs a line feed. Equivalent to a carriage return (CR) line feed (LF)  
combination.  
Control code:  
Hexadecimal:  
NEL  
85  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 45  
E
Page 5-10  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Form Length and Form Feed  
Form length is the distance from the top of the form to the bottom of the form. A  
form feed will advance the paper to the top of the next form. Some programs do not  
send form feeds. Instead, they count line feeds, and send the appropriate number of  
line feeds to fill out the page. The usual rational is that the program is then in  
complete control of form length, and will work on any printer without requiring the  
correct form length to be set. However, the correct form length should always be set  
on the FormsPro 4000. Even if the program does not use form feeds, the printer will  
automatically scroll a completed form up to the tear bar to be torn off. This automatic  
scroll is based upon form length. The easiest way to set form length is via the  
"Length:" value in the "Setup: FORM" menu, so it will be correctly set for everyone  
using the form. If correct form length cannot be guaranteed from SETUP, then each  
program should set the correct form length.  
Set Form Length in Lines  
ESC [ n t  
Sets the form length to n lines at the current line spacing. 1³ n³ 255. Maximum form  
length is 37.9 inches. Invalid form lengths will be ignored. Overrides the "Length:"  
value in the "Setup: FORM" menu.  
For example, an 11 inch form contains 66 lines at 6 LPI, but 88 lines at 8 LPI. If line  
spacing is changed after setting the form length, the physical form length (in inches)  
will not be changed.  
Resets top of form to the current position, so it is wise to be at top of form before  
setting form length. Issuing a form feed will guarantee this. Vertical margins are  
cleared.  
Example: The following escape sequence will set form length to 66 lines. At 6 LPI,  
this will result in a form length of 11 inches.  
Escape sequence:  
Hexadecimal:  
ESC  
[
6
6
t
1B 5B 36 36 74  
Form Feed  
FF  
Causes the current line to be printed, and then advances the paper to the top of the  
next form. If a top margin is set, printing will continue at the top margin. The "FF at  
TOF: No" value in the "Setup: INTERFACE" menu allows a form feed to be ignored  
if the paper is already at top of form. If "Auto CR: On" is selected in the "Setup:  
INTERFACE" menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
FF  
0A  
Page 5-11  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Horizontal Tabs  
Horizontal tab stops are associated with columns, not absolute physical positions.  
Changing character spacing will change the physical position of the tab stops.  
Default tab stops are set at every eighth column, i.e. column 9, 17, 25, 33, 41, etc. If  
different tab stops are to be set, the default tab stops should first be cleared.  
Horizontal Tab  
HT  
Advances to the next horizontal tab stop. If no tab stop exists between the active  
column and the right margin, the HT will be ignored. Default tab stops are set at  
every eighth column, i.e. column 9, 17, 25, 33, 41, etc. Different tab stops may be set  
with ESC H, ESC 1, or ESC [ n1 ; n2 ; ... nx u.  
Control code:  
Hexadecimal:  
HT  
09  
Set Horizontal Tab Stop  
(or)  
(or)  
HTS  
ESC H  
ESC 1  
Sets a horizontal tab stop at the current print position. The tab stop is associated with  
the active column, not an absolute physical position. Changing character spacing will  
change the physical position of the tab stop.  
Default tab stops are set at every eighth column, i.e. column 9, 17, 25, 33, 41, etc.  
The tab stop set by this escape sequence will be added to previously set tab stops,  
including the default tab stops. If this is not desired, the old tab stops should first be  
cleared.  
Control code:  
Hexadecimal:  
HTS  
88  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 48  
H
Escape Sequence:  
Hexadecimal:  
ESC  
1B 31  
1
Set Horizontal Tab Stops  
ESC [ n1 ; n2 ; ... nx u  
Sets new horizontal tab stops at column n1, n2, n3, etc. 1³ n³ 255. The tab stops are  
associated with columns, not absolute physical positions. Changing character spacing  
Page 5-12  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
will change the physical position of the tab stops. The leftmost column is column  
one.  
Default tab stops are set at every eighth column, i.e. column 9, 17, 25, 33, 41, etc.  
The tab stops set by this escape sequence will be added to previously set tab stops,  
including the default tab stops. If this is not desired, the old tab stops should first be  
cleared.  
Example: The following escape sequence will set horizontal tab stops at five column  
intervals.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
6
;
1
1
;
1
6
u
1B 5B 36 3B 31 31 3B 31 36 75  
Example: The following escape sequence will set a horizontal tab stop at column six.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
6
u
1B 5B 36 75  
Clear Horizontal Tab Stop  
(or)  
ESC [ g  
ESC [ 0 g  
Clears the horizontal tab stop at the current print position. The tab stop to be cleared  
is associated with the active column (based upon the current character spacing), not  
an absolute physical position.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 5B 67  
[
g
Clear All Horizontal Tab Stops  
(or)  
(or)  
ESC 2  
ESC [ 2 g  
ESC [ 3 g  
Clears all currently set horizontal tab stops.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 32  
2
Escape Sequence:  
Hexadecimal:  
ESC  
[
2
g
1B 5B 32 67  
Escape Sequence:  
Hexadecimal:  
ESC  
[
3
g
1B 5B 33 67  
Page 5-13  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Vertical Tabs  
Vertical tab stops are associated with lines, not absolute physical positions. Changing  
line spacing will change the physical position of the tab stops.  
Vertical Tab  
VT  
Causes the current line to be printed, and then advances the paper to the next vertical  
tab stop. If no vertical tab stops are set, then a line feed is done instead. If "Auto CR:  
On" is selected in the "Setup: INTERFACE" menu, a carriage return will also be  
performed.  
Control code:  
Hexadecimal:  
VT  
0B  
Set Vertical Tab Stop  
(or)  
(or)  
VTS  
ESC J  
ESC 3  
Sets a vertical tab stop at the current line. The tab stop is associated with the active  
line, not an absolute physical position. Changing line spacing will change the  
physical position of the tab stop.  
The tab stop set by this escape sequence will be added to previously set tab stops. If  
this is not desired, the old tab stops should first be cleared.  
Control code:  
Hexadecimal:  
VTS  
8A  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4A  
J
Escape Sequence:  
Hexadecimal:  
ESC  
1B 33  
3
Set Vertical Tab Stops  
ESC [ n1 ; n2 ; ... nx v  
Sets new vertical tab stops at line n1, n2, n3, etc. 1³ n³ 255. The tab stops are  
associated with lines, not absolute physical positions. Changing line spacing will  
change the physical position of the tab stops. The first line is line one.  
The tab stops set by this escape sequence will be added to previously set tab stops. If  
this is not desired, the old tab stops should first be cleared.  
Page 5-14  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Example: The following escape sequence will set vertical tab stops at line 7, 13, and  
25. If line spacing is 6 lpi, this will result in tab stops one inch, two inches, and four  
inches from the top of the form.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
7
;
1
3
;
2
5
v
1B 5B 37 3B 31 33 3B 32 35 76  
Example: The following escape sequence will set a vertical tab stop at line seven.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
7
v
1B 5B 37 76  
Clear Vertical Tab Stop  
ESC [ 1 g  
Clears the vertical tab stop at the current line. The tab stop to be cleared is associated  
with the active line (based upon the current line spacing), not an absolute physical  
position.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
g
1B 5B 31 67  
Clear All Vertical Tab Stops  
(or)  
ESC 4  
ESC [ 4 g  
Clears all currently set vertical tab stops.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 34  
4
Escape Sequence:  
Hexadecimal:  
ESC  
[
4
g
1B 5B 34 67  
Page 5-15  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Horizontal Margins  
Printing is allowed only within the left and right margins. Exceeding the right margin  
will cause line wrap, setting the current print position to the left margin and  
advancing the paper one line.  
Set Left and Right Margin  
ESC [ n1 ; n2 s  
Sets the left margin to column n1 and the right margin to column n2 at the current  
character spacing. 0³ n1³ 255, 0³ n2³ 255. If character spacing is changed after  
setting the margins, the position of the margins will not change.  
The margin settings are inclusive. For example, a left margin at column 11 allows a  
character to be printed in column 11, but not in column 10. A right margin at column  
75 allows a character to be printed in column 75, but not in column 76.  
The leftmost column is column one. If n1 or n2 is zero (or is omitted), the  
corresponding margin is not changed. The left margin must be left of the right  
margin and £13.4 inches. The right margin must be right of the left margin and £13.6  
inches. Invalid margins will be ignored. Overrides the "Left Mar:" and "Right Mar:"  
values in the "Setup: FORM" menu.  
Example: The following escape sequence will set a one inch left margin, and will set  
a right margin 7.5 inches from the left edge of the form, if character spacing is  
currently 10 cpi. For a standard 8.5 inch wide form, this would result in a one inch  
right margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
0
;
7
5
s
1B 5B 31 30 3B 37 35 73  
Example: The following escape sequence will set the left margin to column 10,  
without affecting the right margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
1
0
s
1B 5B 31 30 73  
Example: The following escape sequence will set the right margin to column 75,  
without affecting the left margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
;
7
5
s
1B 5B 3B 37 35 73  
Page 5-16  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Vertical Margins  
Printing is allowed only within the top and bottom margins. Exceeding the bottom  
margin will set the current line to the top margin of the next form.  
Set Top and Bottom Margins  
ESC [ n1 ; n2 r  
Sets the top margin to line n1 and the bottom margin to line n2 at the current line  
spacing. 0³ n1³ 255, 0³ n2³ 255. If line spacing is changed after setting the margins,  
the position of the margins will not change. Vertical margins are cleared by ESC [ n  
t.  
The top and bottom margins are both inclusive. For example, a top margin at line 7  
still allows text to be printed on line 7, but not on line 6. A bottom margin at line 60  
still allows text to be printed on line 60, but not on line 61.  
The first line is line one. If n1 or n2 is zero (or is omitted), the corresponding margin  
is not changed. The top margin must be above the bottom margin. The bottom  
margin must be below the top margin. The margins cannot exceed the form length.  
Invalid margins will be ignored. Overrides the "Top Mar:" and "Btm Mar:" values in  
the "Setup: FORM" menu.  
Example: The following escape sequence will set a top margin at line 7, and will set  
a bottom margin at line 60. For a standard 11 inch form with 6 lpi line spacing, this  
would result in one inch top and bottom margins.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
7
;
6
0
r
1B 5B 37 3B 36 30 72  
Example: The following escape sequence will set a top margin at line 7, without  
affecting the bottom margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
7
r
1B 5B 37 72  
Example: The following escape sequence will set a bottom margin at line 60, without  
affecting the top margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
;
6
0
r
1B 5B 3B 36 30 72  
Page 5-17  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Printer Controls  
Bell  
BEL  
Causes the printer's bell to sound.  
Control code:  
Hexadecimal:  
BEL  
07  
Select Automatic Carriage Return  
ESC [ 20 h  
Selects automatic carriage return mode. This causes the printer to automatically  
perform a carriage return (CR) for each line feed (LF), vertical tab (VT), or form feed  
(FF) that it receives. Overrides the "Auto CR:" value in the "Setup: INTERFACE"  
menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
2
0
h
1B 5B 32 30 68  
Cancel Automatic Carriage Return  
ESC [ 20 l  
Cancels automatic carriage return mode. Overrides the "Auto CR:" value in the  
"Setup: INTERFACE" menu.  
Escape Sequence:  
Hexadecimal:  
ESC  
[
2
0
l
1B 5B 32 30 6C  
Printer Identification  
(or)  
ESC [ c  
ESC [ 0 c  
Causes the printer to respond with ESC [ ? 2 c to identify itself as an LA120-RA  
printer. (The response can only be sent if serial I/O is selected.)  
Page 5-18  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Emulations  
Select Software Interface n  
ESC ESC n  
Selects the software interface n according to the table below.  
n
0
1
2
3
4
5
6
Software Interface  
Test (reserved for factory use)  
ANSI X3.64 Emulation  
Epson FX Emulation  
Bar Code Mode (optional)  
IBM Proprinter Emulation  
DEC LA120 Emulation  
TTY Emulation  
7
Printek Emulation  
?
@
Previously Selected Emulation  
Default Emulation  
Overrides the "Mode:" value in the "Setup: INTERFACE" menu.  
BarberPole" and "Mode: Hex Dump" cannot be overridden.  
"Mode:  
A numeric value for n may be specified in two different ways, with equivalent results:  
a single byte with a value of 00 to 07 hex, or a single printable ASCII character "0" to  
"7" (30 to 37 hex).  
If more than one emulation has been selected, ESC ESC ? will return to the  
previously selected emulation. This is particularly useful when the previous  
emulation is unknown. Please beware that the memory (stack) is only one level deep.  
ESC ESC @ will return to the default emulation, as specified by the "Mode:" value in  
the "Setup: INTERFACE" menu.  
This chapter describes DEC LA120 emulation. If a different interface is selected, the  
control codes and escape sequences described in this chapter will no longer be  
applicable.  
Example: The following escape sequences will select Printek emulation, load form  
one, and then return to the previous emulation.  
Escape Sequence:  
Hexadecimal:  
ESC ESC  
7
ESC  
L
1
ESC ESC  
?
1B 1B 07 1B 4C 01 1B 1B 3F  
Page 5-19  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
Control Codes and Escape Sequences  
Sorted Alphabetically  
BEL  
BS  
Bell  
Backspace  
CR  
DEL  
Carriage Return  
Delete  
ESC ( a  
ESC 1  
ESC 2  
ESC 3  
Select International Character Set  
Set Horizontal Tab Stop  
Clear All Horizontal Tab Stops  
Set Vertical Tab Stop  
ESC 4  
ESC D  
Clear All Vertical Tab Stops  
Line Feed  
ESC E  
New Line  
ESC ESC n  
ESC H  
ESC J  
Select Software Interface n  
Set Horizontal Tab Stop  
Set Vertical Tab Stop  
ESC [ n `  
ESC [ n a  
ESC [ c  
Absolute Horizontal Tab  
Relative Horizontal Tab  
Printer Identification  
ESC [ 0 c  
ESC [ n d  
ESC [ n e  
ESC [ g  
Printer Identification  
Absolute Vertical Tab  
Relative Vertical Tab  
Clear Horizontal Tab Stop  
Clear Horizontal Tab Stop  
Clear Vertical Tab Stop  
Clear All Horizontal Tab Stops  
Clear All Horizontal Tab Stops  
Clear All Vertical Tab Stops  
Select Automatic Carriage Return  
Cancel Automatic Carriage Return  
Select Graphic Rendition  
Set Top and Bottom Margins  
Set Left and Right Margin  
Set Form Length in Lines  
Set Horizontal Tab Stops  
Set Vertical Tab Stops  
Set Character Spacing  
ESC [ 0 g  
ESC [ 1 g  
ESC [ 2 g  
ESC [ 3 g  
ESC [ 4 g  
ESC [ 20 h  
ESC [ 20 l  
ESC [ n m  
ESC [ n1 ; n2 r  
ESC [ n1 ; n2 s  
ESC [ n t  
ESC [ n1 ; n2 ; ... nx u  
ESC [ n1 ; n2 ; ... nx v  
ESC [ n w  
ESC [ n z  
ETX  
Set Line Spacing  
End of Text  
Page 5-20  
Download from Www.Somanuals.com. All Manuals Search And Download.  
DEC LA120 Emulation  
FF  
HT  
HTS  
IND  
LF  
Form Feed  
Horizontal Tab  
Set Horizontal Tab Stop  
Line Feed  
Line Feed  
NEL  
NUL  
VT  
New Line  
Null  
Vertical Tab  
VTS  
Set Vertical Tab Stop  
Page 5-21  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Download from Www.Somanuals.com. All Manuals Search And Download.  
SIMPLE TTY EMULATION  
Introduction  
This section describes the control codes and escape sequences comprising simple  
TTY emulation. This emulation may be selected by specifying "Mode: TTY" in the  
"Setup: INTERFACE" menu, or via software with the ESC ESC 6 sequence. While  
this emulation is selected, control codes and escape sequences from other emulations  
are not available.  
Control codes and escape sequences are used to control printer operation. An ASCII  
control code is a single character in the range 00 hex through 1F hex, and 7F hex.  
The ESC (Escape) control code (1B hex) is used to introduce character strings called  
escape sequences, which provide an extension of the commands available with ASCII  
control codes.  
TTY emulation is unique in that it does not support any escape sequences (except for  
the ESC ESC n sequence, which may be used to select a different emulation).  
Spaces are used when documenting escape sequences to increase readability. The  
spaces within the sequences are for readability only; they are not part of the  
sequences themselves. Characters that appear in italics (such as "n") are not sent to  
the printer as is; they are used as a place holder indicating that some value must be  
supplied.  
Multiple character strings without intervening spaces typically represent control  
codes. For example, BS is the Backspace control code (08 hex), not the two  
characters "B" and "S" (42 and 53 hex). An ASCII Control Code Table is contained  
in the appendices for your convenience. If you have any doubt about how to interpret  
a documented control code or escape sequence, refer to the hex representation in the  
provided example. This should clarify any ambiguity. The examples may also be  
helpful when analyzing a hex dump (see chapter 8) printed by the printer.  
Page 6-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Simple TTY Emulation  
Control Codes and Escape Sequences  
Grouped by Function  
Communications  
End of Text  
ETX  
If "ETX/ACK: On" is specified in the "Setup: INTERFACE" menu, then receipt of an  
ETX causes the printer to transmit an ACK to the host computer.  
Since the ETX may be a legal value within an escape sequence, it is the user's  
responsibility to ensure that an ETX used for data handshake is not sent within an  
escape sequence. The user must also ensure that the maximum block size or the  
number of blocks sent at one time does not exceed the input buffer size of the printer.  
ETX/ACK handshake is available only with serial I/O. It is not available when using  
the parallel interface or the coaxial/twinaxial interface.  
Control code:  
Hexadecimal:  
ETX  
03  
Horizontal Position  
Carriage Return  
CR  
Causes the current line to be printed, and then sets the current print position to the left  
margin. If "Auto LF: On" is selected in the "Setup: INTERFACE" menu, a line feed  
will also be performed.  
Control code:  
Hexadecimal:  
CR  
0D  
Backspace  
BS  
Causes the current line to be printed, and then moves the current print position one  
space to the left. The actual distance moved depends on the current character  
spacing. Backspacing can be done up to, but not beyond, the left margin.  
Control code:  
Hexadecimal:  
BS  
08  
Page 6-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Simple TTY Emulation  
Vertical Position  
Line Feed  
LF  
Causes the current line to be printed, and then advances the paper one line at the  
current line spacing. If "Auto CR: On" is selected in the "Setup: INTERFACE"  
menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
LF  
0A  
Form Length and Form Feed  
Form length is the distance from the top of the form to the bottom of the form. A  
form feed will advance the paper to the top of the next form. Some programs do not  
send form feeds. Instead, they count line feeds, and send the appropriate number of  
line feeds to fill out the page. The usual rational is that the program is then in  
complete control of form length, and will work on any printer without requiring the  
correct form length to be set. However, the correct form length should always be set  
on the FormsPro 4000. Even if the program does not use form feeds, the printer will  
automatically scroll a completed form up to the tear bar to be torn off. This automatic  
scroll is based upon form length. The easiest way to set form length is via the  
"Length:" value in the "Setup: FORM" menu, so it will be correctly set for everyone  
using the form.  
Form Feed  
FF  
Causes the current line to be printed, and then advances the paper to the top of the  
next form. If a top margin is set, printing will continue at the top margin. The "FF at  
TOF: No" value in the "Setup: INTERFACE" menu allows a form feed to be ignored  
if the paper is already at top of form. If "Auto CR: On" is selected in the "Setup:  
INTERFACE" menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
FF  
0A  
Page 6-3  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Simple TTY Emulation  
Horizontal Tabs  
Default horizontal tab stops are set at every eighth column, i.e. column 8, 16, 24, 32,  
40, etc. (The first column is column zero.) The default tab stops are associated with  
columns, not absolute physical positions. Changing character spacing will change the  
physical position of the default tab stops.  
Horizontal Tab  
HT  
Advances to the next horizontal tab stop. If no tab stop exists between the active  
column and the right margin, the HT will be ignored. Default tab stops are set at  
every eighth column, i.e. column 8, 16, 24, 32, 40, etc.  
Control code:  
Hexadecimal:  
HT  
09  
Vertical Tabs  
Vertical Tab  
VT  
Causes the current line to be printed, and then advances the paper to the next vertical  
tab stop. If no vertical tab stops are set, then a line feed is done instead. If "Auto CR:  
On" is selected in the "Setup: INTERFACE" menu, a carriage return will also be  
performed.  
It is not possible to set vertical tab stops in TTY emulation. If tab stops were  
previously set in some other emulation, they will be used.  
Control code:  
Hexadecimal:  
VT  
0B  
Printer Controls  
Bell  
BEL  
Causes the printer's bell to sound.  
Control code:  
Hexadecimal:  
BEL  
07  
Page 6-4  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Simple TTY Emulation  
Emulations  
Select Software Interface n  
ESC ESC n  
Selects the software interface n according to the table below.  
n
0
1
2
3
4
5
6
Software Interface  
Test (reserved for factory use)  
ANSI X3.64 Emulation  
Epson FX Emulation  
Bar Code Mode (optional)  
IBM Proprinter Emulation  
DEC LA120 Emulation  
TTY Emulation  
7
Printek Emulation  
?
@
Previously Selected Emulation  
Default Emulation  
Overrides the "Mode:" value in the "Setup: INTERFACE" menu.  
BarberPole" and "Mode: Hex Dump" cannot be overridden.  
"Mode:  
A numeric value for n may be specified in two different ways, with equivalent results:  
a single byte with a value of 00 to 07 hex, or a single printable ASCII character "0" to  
"7" (30 to 37 hex).  
If more than one emulation has been selected, ESC ESC ? will return to the  
previously selected emulation. This is particularly useful when the previous  
emulation is unknown. Please beware that the memory (stack) is only one level deep.  
ESC ESC @ will return to the default emulation, as specified by the "Mode:" value in  
the "Setup: INTERFACE" menu.  
This chapter describes TTY emulation. If a different interface is selected, the control  
codes and escape sequences described in this chapter will no longer be applicable.  
Example: The following escape sequences will select Printek emulation, load form  
one, and then return to the previous emulation.  
Escape Sequence:  
Hexadecimal:  
ESC ESC  
7
ESC  
L
1
ESC ESC  
?
1B 1B 07 1B 4C 01 1B 1B 3F  
Page 6-5  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Simple TTY Emulation  
Control Codes and Escape Sequences  
Sorted Alphabetically  
BEL  
BS  
Bell  
Backspace  
CR  
Carriage Return  
ESC ESC n  
ETX  
FF  
Select Software Interface n  
End of Text  
Form Feed  
HT  
LF  
Horizontal Tab  
Line Feed  
VT  
Vertical Tab  
Page 6-6  
Download from Www.Somanuals.com. All Manuals Search And Download.  
PRINTEK EMULATION  
Introduction  
This section describes the control codes and escape sequences comprising Printek  
emulation. This emulation may be selected by specifying "Mode: Printek" in the  
"Setup: INTERFACE" menu, or via software with the ESC ESC 7 sequence. While  
this emulation is selected, control codes and escape sequences from other emulations  
are not available.  
Control codes and escape sequences are used to control printer operation. An ASCII  
control code is a single character in the range 00 hex through 1F hex, and 7F hex.  
The ESC (Escape) control code (1B hex) is used to introduce character strings called  
escape sequences, which provide an extension of the commands available with ASCII  
control codes.  
Some escape sequences accept one or more numeric parameters. If a sequence  
accepts one numeric parameter, it will be represented as "n". If a sequence accepts  
more than one numeric parameter, they will be represented as "n1 n2 ... nx".  
Since numeric parameters are always encoded in one byte, their values may range  
from 0 to 255 decimal. Please note that the value will never be represented by a  
string of ASCII decimal digits ("0" through "9"). For example, a value of 66 decimal  
would be sent as a single byte with a hex value of 42. This is equivalent to sending  
the ASCII character "B". It is entirely different than sending the two printable ASCII  
characters "66".  
If a numeric parameter is limited to a value of zero or one, it may be sent as a single  
byte with a value of 00 or 01 hex (NUL or SOH), or it may be sent as a single  
printable ASCII character "0" or "1" (30 or 31 hex).  
Spaces are used when documenting escape sequences to increase readability. The  
spaces within the sequences are for readability only; they are not part of the  
sequences themselves. Characters that appear in italics (such as "n" and "n1 n2"  
above) are not sent to the printer as is; they are used as a place holder indicating that  
some value must be supplied.  
Multiple character strings without intervening spaces typically represent control  
codes. For example, BS is the Backspace control code (08 hex), not the two  
characters "B" and "S" (42 and 53 hex). An ASCII Control Code Table is contained  
in the appendices for your convenience. If you have any doubt about how to interpret  
Page 7-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
a documented control code or escape sequence, refer to the hex representation in the  
provided example. This should clarify any ambiguity. The examples may also be  
helpful when analyzing a hex dump (see chapter 8) printed by the printer.  
Column and line numbers begin at zero, not at one. Keep this in mind when setting  
tabs, margins, etc.  
Printek emulation was developed to allow access to the full range of hardware  
features available in the Printek FormsPro 4000. Other emulations typically support  
some character pitches, but not all character pitches. They do not allow the 10  
different form setups to be selected via software, or allow graphics of every possible  
density to be printed. Printek emulation supports all of these features, and more, in  
one place. This makes Printek emulation the most powerful emulation available in  
the printer. We encourage you to take full advantage of all the unique features  
available in Printek emulation. After all, these features are the reason you purchased  
the FormsPro 4000. However, you should be aware that using these features may  
prevent your software from being easily portable to other printers. If you do not  
require the unique features available in Printek mode, it is probably wise to choose a  
different emulation that is more widely supported.  
The most common reason for using Printek emulation is to select a different form  
setup (and thus change tractors). Many users switch to Printek emulation (using the  
ESC ESC 7 sequence), load a new form (using the ESC L n sequence), and then  
return to their standard emulation (using the ESC ESC n sequence). If you normally  
use Epson emulation, please note that the Epson sequence ESC EM n allows Form 0,  
1, or 2 to be selected without switching to Printek emulation.  
Page 7-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Control Codes and Escape Sequences  
Grouped by Function  
Communications  
End of Text  
ETX  
If "ETX/ACK: On" is specified in the "Setup: INTERFACE" menu, then receipt of an  
ETX causes the printer to transmit an ACK to the host computer.  
Since the ETX may be a legal value within an escape sequence, it is the user's  
responsibility to ensure that an ETX used for data handshake is not sent within an  
escape sequence. The user must also ensure that the maximum block size or the  
number of blocks sent at one time does not exceed the input buffer size of the printer.  
ETX/ACK handshake is available only with serial I/O. It is not available when using  
the parallel interface or the coaxial/twinaxial interface.  
Control code:  
Hexadecimal:  
ETX  
03  
Deselect Printer  
(or)  
DC3  
XOFF  
Deselects the printer. Use of this command is discouraged, because the printer will  
remain offline until an operator presses the ONLINE button on the control panel.  
Control code:  
Hexadecimal:  
DC3  
13  
Page 7-3  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Character Size  
Set Character Spacing  
ESC SP n  
Sets character spacing in decipoints (n/720 of an inch). Overrides the "CPI:" value in  
the "Setup: FORM" menu. Supported values are shown in the following table.  
n
72  
60  
54  
48  
43  
42  
36  
Character Size  
10 cpi  
12 cpi  
13.3 cpi  
15 cpi  
16.74 cpi  
17.14 cpi  
20 cpi  
Example: The following escape sequence will select 10 cpi character spacing.  
Escape Sequence:  
Hexadecimal:  
ESC SP 72  
1B 20 48  
Double-Wide Mode  
ESC W n  
Selects double-wide mode for n=1, or cancels for n=0. Double-wide mode doubles  
the width of all characters, but does not affect character height. ESC S 3 may be used  
to select double-high mode.  
Example: The following escape sequence will select double-wide mode.  
Escape Sequence:  
Hexadecimal:  
ESC W  
1B 57 31  
1
Select Script Modes  
ESC S n  
Selects normal character height for n=0, subscript mode for n=1, superscript mode for  
n=2, or double-high mode for n=3. This is shown in the following table.  
n
0
1
2
3
Script Mode  
Script modes off  
Subscript  
Superscript  
Double high  
Subscript mode will print characters about half the normal height in the bottom half  
of the normal character cell. Superscript mode will print characters about half the  
normal height in the top half of the normal character cell. Double-high mode doubles  
Page 7-4  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
the height of all characters. These modes are mutually exclusive, and none of them  
affect character width.  
Example: The following escape sequence will select double-high mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 53 03  
S
3
Character Attributes  
Emphasized Mode  
ESC E n  
Selects emphasized mode for n=1, or cancels for n=0. Emphasized mode makes  
characters bolder by printing an extra dot to the right of each dot normally found in  
the character matrix. This will cut the print speed in half, but will not require an  
additional pass of the print head. Overrides the "Impact:" value in the "Setup:  
FORM" menu.  
Example: The following escape sequence will select emphasized mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 45 31  
E
1
Double-Strike Mode  
ESC D n  
Selects double-strike mode for n=1, or cancels for n=0. Double-strike mode makes  
text bolder by printing it twice. This will cut the print speed in half, because an  
additional pass of the print head will be required.  
Example: The following escape sequence will select double-strike mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 44 31  
D
1
Underline Mode  
ESC _ n  
Selects underline mode for n=1, or cancels for n=0. This mode provides continuous  
underlining for all characters, including spaces.  
Example: The following escape sequence will turn underlining on.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 5F 31  
_
1
Page 7-5  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Character Sets  
Select Font  
ESC F n  
Select font n according to the following table.  
n
0
Font  
Epson FX Draft  
1
2
Epson FX Letter Quality  
Proprinter Draft  
3
Proprinter Letter Quality  
EBCDIC Draft (optional)  
EBCDIC Letter Quality (optional)  
OCR-A Optical Quality (optional)  
OCR-B Optical Quality (optional)  
10  
11  
12  
13  
32  
33  
34  
36  
37  
38  
44  
45  
46  
64  
65  
66  
71  
75  
Epson FX Fast Draft  
Epson FX Draft  
Epson FX Letter Quality  
Proprinter PC Fast Draft  
Proprinter PC Draft  
Proprinter PC Letter Quality  
PC Latin II (Slavic) Fast Draft  
PC Latin II (Slavic) Draft  
PC Latin II (Slavic) Letter Qualit  
EBCDIC Fast Draft  
EBCDIC Draft  
EBCDIC Letter Quality  
OCR-A Optical Quality  
OCR-B Optical Quality  
Overrides the "Font:" value in the "Setup: FORM" menu. If the specified font is not  
installed, the "Font:" value in the "Setup: FORM" menu will be used to select the  
default font.  
Example: The following escape sequence will select the Proprinter letter quality font.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 46 03  
F
3
Page 7-6  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Print Single Character  
ESC \ n  
Prints the character n from the selected font. This sequence may be used to print a  
character that is normally treated as a control code.  
Example: The following escape sequence will print a left arrow, if a Proprinter font  
is selected. This character is normally not printable, since it is treated as the ESC  
control code.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 5C 1B  
\
ESC  
Line Pitch  
Set Line Spacing to n/288"  
ESC LF n  
Sets the line spacing to n/288 of an inch per line. 0³ n³ 255. Overrides the "LPI:"  
value in the "Setup: FORM" menu.  
Example: The following escape sequence will set line spacing to 1/6 of an inch per  
line (6 lpi).  
Escape Sequence:  
Hexadecimal:  
ESC LF 48  
1B 0A 30  
Page 7-7  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Horizontal Position  
Carriage Return  
CR  
Causes the current line to be printed, and then sets the current print position to the left  
margin. If "Auto LF: On" is selected in the "Setup: INTERFACE" menu, a line feed  
will also be performed.  
Control code:  
Hexadecimal:  
CR  
0D  
Backspace  
BS  
Causes the current line to be printed, and then moves the current print position one  
space to the left. The actual distance moved depends on the current character  
spacing. Backspacing can be done up to, but not beyond, the left margin.  
Control code:  
Hexadecimal:  
BS  
08  
Vertical Position  
Line Feed  
LF  
Causes the current line to be printed, and then advances the paper one line at the  
current line spacing. If "Auto CR: On" is selected in the "Setup: INTERFACE"  
menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
LF  
0A  
Reverse Line Feed  
ESC ^  
Causes the current line to be printed, and then retracts the paper one line at the current  
line spacing. If "Auto CR: On" is selected in the "Setup: INTERFACE" menu, a  
carriage return will also be performed.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 5E  
^
Page 7-8  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Form Length and Form Feed  
Form length is the distance from the top of the form to the bottom of the form. A  
form feed will advance the paper to the top of the next form. Some programs do not  
send form feeds. Instead, they count line feeds, and send the appropriate number of  
line feeds to fill out the page. The usual rational is that the program is then in  
complete control of form length, and will work on any printer without requiring the  
correct form length to be set. However, the correct form length should always be set  
on the FormsPro 4000. Even if the program does not use form feeds, the printer will  
automatically scroll a completed form up to the tear bar to be torn off. This automatic  
scroll is based upon form length. The easiest way to set form length is via the  
"Length:" value in the "Setup: FORM" menu, so it will be correctly set for everyone  
using the form. If correct form length cannot be guaranteed from SETUP, then each  
program should set the correct form length.  
Set Form Length in Lines  
ESC FF n  
Sets the form length to n lines at the current line spacing. 1³ n³ 255. Maximum form  
length is 37.9 inches. Invalid form lengths will be ignored. Overrides the "Length:"  
value in the "Setup: FORM" menu.  
For example, an 11 inch form contains 66 lines at 6 LPI, but 88 lines at 8 LPI. If line  
spacing is changed after setting the form length, the physical form length (in inches)  
will not be changed.  
Resets top of form to the current position, so it is wise to be at top of form before  
setting form length. Issuing a form feed will guarantee this. Vertical margins are  
cleared.  
Example: The following escape sequence will set form length to 66 lines. At 6 LPI,  
this will result in a form length of 11 inches.  
Escape sequence:  
Hexadecimal:  
ESC FF 66  
1B 0C 42  
Form Feed  
FF  
Causes the current line to be printed, and then advances the paper to the top of the  
next form. If a top margin is set, printing will continue at the top margin. The "FF at  
TOF: No" value in the "Setup: INTERFACE" menu allows a form feed to be ignored  
if the paper is already at top of form. If "Auto CR: On" is selected in the "Setup:  
INTERFACE" menu, a carriage return will also be performed.  
Control code:  
Hexadecimal:  
FF  
0A  
Page 7-9  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Horizontal Tabs  
Default horizontal tab stops are set at every eighth column, i.e. column 8, 16, 24, 32,  
40, etc. The default tab stops are associated with columns, not absolute physical  
positions. Changing character spacing will change the physical position of the default  
tab stops.  
User defined horizontal tab stops are associated with absolute physical positions, not  
with columns. The tab stops are set relative to the current character spacing, but  
subsequent changes in character spacing will not affect the physical position of the  
tab stops (except that the position will be rounded up to the closest character  
boundary).  
Horizontal Tab  
HT  
Advances to the next horizontal tab stop. If no tab stop exists between the active  
column and the right margin, the HT will be ignored. Default tab stops are set at  
every eighth column, i.e. column 8, 16, 24, 32, 40, etc. Different tab stops may be set  
with ESC HT.  
Control code:  
Hexadecimal:  
HT  
09  
Set Horizontal Tab Stops  
ESC HT n1 n2 ... nx NUL  
Clears all currently set horizontal tab stops, and sets new tab stops at column n1, n2,  
n3, etc. 1³ n³ 255. The tab stops must be presented in ascending order. The NUL  
character, or any tab stop value less than the preceding one, terminates the sequence.  
The tab stops are set relative to the current character spacing, but subsequent changes  
in character spacing will not affect the physical position of the tab stops (except that  
the position will be rounded up to the closest character boundary). The leftmost  
column is column zero.  
Default tab stops are set at every eighth column, i.e. column 8, 16, 24, 32, 40, etc.  
The tab stops set by ESC HT will replace the default tab stops. ESC HT NUL will  
clear all tab stops, leaving no tab stops set. The default tab stops are restored by ESC  
R.  
Example: The following escape sequence will set horizontal tab stops at half inch  
intervals, if character spacing is currently 10 cpi.  
Escape Sequence:  
Hexadecimal:  
ESC HT  
1B 09 05 0A 0f  
5
10 15 20 25 30 NUL  
14 19 1E 00  
Page 7-10  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Vertical Tabs  
Vertical tab stops are associated with absolute physical positions, not with lines. The  
tab stops are set relative to the current line spacing, but subsequent changes in line  
spacing will not affect the physical position of the tab stops.  
Vertical Tab  
VT  
Causes the current line to be printed, and then advances the paper to the next vertical  
tab stop. If no vertical tab stops are set, then a line feed is done instead. If "Auto CR:  
On" is selected in the "Setup: INTERFACE" menu, a carriage return will also be  
performed.  
Control code:  
Hexadecimal:  
VT  
0B  
Set Vertical Tab Stops  
ESC VT n1 n2 ... nx NUL  
Clears all currently set vertical tab stops, and sets new tab stops at line n1, n2, n3, etc.  
1³ n³ 255. The tab stops must be presented in ascending order. The NUL character,  
or any tab stop value less than the preceding one, terminates the sequence. The tab  
stop settings are based on the current line spacing. Changing the line spacing after  
the tab stops are set will not affect the position of the tab stops. The first line is line  
zero.  
ESC VT NUL or ESC R will clear all currently set vertical tab stops, leaving no  
vertical tab stops set.  
Example: The following escape sequence will set vertical tab stops at line 6, 12, and  
24. If line spacing is currently 6 lpi, this will result in tab stops one inch, two inches,  
and four inches from the top of the form.  
Escape Sequence:  
Hexadecimal:  
ESC VT  
1B 0B 06 0C 18 00  
6
12 24 NUL  
Page 7-11  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Horizontal and Vertical Tabs  
Reset Horizontal and Vertical Tab Stops  
ESC R  
Clears all currently set horizontal tab stops, and restores the default horizontal tab  
stops. Default horizontal tab stops are set at every eighth column, i.e. column 8, 16,  
24, 32, 40, etc. Clears all currently set vertical tab stops.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 52  
R
Horizontal Margins  
Printing is allowed only within the left and right margins. Exceeding the right margin  
will cause line wrap, setting the current print position to the left margin and  
advancing the paper one line.  
Set Left and Right Margin  
ESC H n1 n2  
Sets the left margin to column n1 and the right margin to column n2 at the current  
character spacing. 0³ n1³ 255, 0³ n2³ 255. If character spacing is changed after  
setting the margins, the position of the margins will not change.  
The left margin is inclusive, but the right margin is exclusive. For example, a left  
margin at column 10 still allows a character to be printed in column 10. A right  
margin at column 75 allows a character to be printed in column 74, but not in column  
75.  
The leftmost column is column zero. The left margin must be left of the right margin  
and £13.4 inches. The right margin must be right of the left margin and £13.6 inches.  
Invalid margins will be ignored. Overrides the "Left Mar:" and "Right Mar:" values  
in the "Setup: FORM" menu.  
Example: The following escape sequence will set a one inch left margin, and will set  
a right margin 7.5 inches from the left edge of the form, if character spacing is  
currently 10 cpi. For a standard 8.5 inch wide form, this would result in a one inch  
right margin.  
Escape Sequence:  
Hexadecimal:  
ESC  
H
10 75  
1B 48 0A 4B  
Page 7-12  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Vertical Margins  
Printing is allowed only within the top and bottom margins. Exceeding the bottom  
margin will set the current line to the top margin of the next form.  
Set Top and Bottom Margins  
ESC V n1 n2  
Sets the top margin to line n1 and the bottom margin to line n2 at the current line  
spacing. 0³ n1³ 255, 0³ n2³ 255. If line spacing is changed after setting the margins,  
the position of the margins will not change. Vertical margins are cleared by ESC FF  
n.  
The top and bottom margins are both inclusive. For example, a top margin at line 6  
still allows text to be printed on line 6, but not on line 5. A bottom margin at line 59  
still allows text to be printed on line 59, but not on line 60.  
The first line is line zero. The top margin must be above the bottom margin. The  
bottom margin must be below the top margin. The margins cannot exceed the form  
length. Invalid margins will be ignored. Overrides the "Top Mar:" and "Btm Mar:"  
values in the "Setup: FORM" menu.  
Example: The following escape sequence will set a top margin at line 6, and will set  
a bottom margin at line 59. For a standard 11 inch form with 6 lpi line spacing, this  
would result in one inch top and bottom margins.  
Escape Sequence:  
Hexadecimal:  
ESC  
V
6
59  
1B 56 06 3B  
Page 7-13  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Graphics  
Graphics mode gives the user complete control over every dot position on the paper.  
Graphics may be printed with various horizontal densities from 60 to 240 dpi, and a  
vertical density of 72 dpi.  
Each byte of graphics data represents a vertical column of eight dots, with the MSB  
(most significant bit) corresponding to the top wire of the print head. Turning a bit on  
causes a dot to be printed. The bit values corresponding to each wire of the print head  
are shown below:  
wire 1  
wire 2  
wire 3  
wire 4  
wire 5  
wire 6  
wire 7  
wire 8  
128 (80 hex)  
64 (40 hex)  
32 (20 hex)  
16 (10 hex)  
8
4
2
1
(08 hex)  
(04 hex)  
(02 hex)  
(01 hex)  
The appropriate bit values are added together to fire the desired wires. For example,  
a byte of graphics data with the value 128 (80 hex) will fire the top wire, wire 1. A  
value of 192 (C0 hex) will fire the top two wires, wires 1 and 2. A value of 11 (0B  
hex) will fire wires 5, 7 and 8.  
Each graphics sequence contains two bytes (n1 and n2) that specify how many bytes  
of graphics data follow. N2 can specify values up to 255. If that is sufficient, then n1  
is just set to zero. For values greater than 255, n1 comes into play. The n1 byte  
specifies multiples of 256. For example, to specify 520 bytes of graphics data, use n2  
= 8 and n1 = 2. The bytes of graphics data are strung together to create a graphics  
line that is eight dots high, and (n1 x 256) + n2 dots long. Be sure to provide the  
amount of graphics data that you specify, because the printer will not leave graphics  
mode until it has accepted the specified number of data bytes.  
If "Data Bits: 7" is specified in the "Setup: INTERFACE" menu, beware of potential  
problems in graphics mode. Since the MSB (most significant bit) will always be  
turned off, it will not be possible to fire the top wire of the print head. Worse yet, the  
value of n1 or n2 may be changed. For example, if n1 specifies 200 bytes of data,  
and its MSB is turned off, the printer will only expect 72 bytes of data. It will exit  
graphics mode, and then try to print the remaining 128 bytes of graphics data as  
normal text characters. The result will surely not be pretty. To avoid such problems,  
the use of an 8-bit I/O interface for printing graphics is highly recommended.  
The normal graphics modes allow every dot to be printed. High speed graphics will  
print twice as fast, but will not allow consecutive dots to be printed.  
Page 7-14  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
m DPI Graphics  
ESC * m n1 n2 data  
Selects eight wire graphics of density m as listed in the following table for n2 + (n1 x  
256) columns of data.  
m
6
Density  
240 dpi  
_
7
8
240 dpi high speed  
180 dpi  
9
180 dpi high speed  
144 dpi  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
144 dpi high speed  
120 dpi  
120 dpi high speed  
102.86 dpi  
102.86 dpi high speed  
90 dpi  
90 dpi high speed  
80 dpi  
80 dpi high speed  
72 dpi  
72 dpi high speed  
65.45 dpi  
65.45 dpi high speed  
60 dpi  
60 dpi high speed  
NOTE: Horizontal movement of the FormsPro 4000 print head is measured in  
intervals of 1/720 of an inch. Every supported graphics density above is an integral  
multiple of this resolution. For example, at 60 dpi, dots may be printed every 12/720  
of an inch.  
Example: The following escape sequence will print four bytes of graphics data at 72  
x 72 dpi. The resulting figure will resemble a square, since the horizontal and vertical  
density are the same. If some other density is chosen, the figure will resemble a  
rectangle.  
Escape Sequence:  
Hexadecimal:  
ESC  
*
20  
0
4
<
<
<
<
1B 2A 14 00 04 3C 3C 3C 3C  
Page 7-15  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
m DPI Graphics  
ESC # m n1 n2 data  
Selects eight wire graphics of density m as listed in the following table for n2 + (n1 x  
256) columns of data.  
m
90  
Density  
90 dpi  
100  
135  
150  
100 dpi  
135 dpi  
150 dpi  
NOTE: Horizontal movement of the FormsPro 4000 print head is measured in  
intervals of 1/720 of an inch. The supported graphics densities above may not be an  
integral multiple of this resolution. For example, at 150 dpi, dots may be printed  
every 4.8/720 of an inch. The printer is not really capable of printing dots every  
4.8/720 of an inch. It will print the dots as accurately as possible, with some at 4/720  
of an inch and some at 5/720 of an inch. The overall average will be 4.8/720 of an  
inch.  
Example: The following escape sequence will print five bytes of graphics data at 150  
dpi. The resulting figure will resemble a backslash character, "\".  
Escape Sequence:  
Hexadecimal:  
ESC  
#
150  
0
5
64 32 16  
8
4
1B 23 96 00 05 40 20 10 08 04  
Page 7-16  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Printer Controls  
Bell  
BEL  
Causes the printer's bell to sound.  
Control code:  
Hexadecimal:  
BEL  
07  
Unidirectional Mode  
ESC U n  
Selects unidirectional mode for n=1, or bidirectional mode for n=0. Printing is  
normally bidirectional. Unidirectional printing provides more accurate positioning,  
but causes lower throughput.  
Example: The following escape sequence will force unidirectional printing.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 55 31  
U
1
Automatic Modes  
ESC A n  
Selects automatic modes according to the following table.  
n
0
1
2
3
Mode  
Automatic modes off  
Automatic carriage return  
Automatic line feed  
Both (1 and 2)  
Automatic carriage return mode causes the printer to automatically perform a carriage  
return (CR) for each line feed (LF), vertical tab (VT), or form feed (FF) that it  
receives. Overrides the "Auto CR:" value in the "Setup: INTERFACE" menu.  
Automatic line feed mode causes the printer to automatically perform a line feed (LF)  
for each carriage return (CR) it receives. Overrides the "Auto LF:" value in the  
"Setup: INTERFACE" menu.  
Example: The following escape sequence will select automatic carriage return mode.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 41 01  
A
1
Page 7-17  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
AutoCut  
ESC B n  
Selects Auto Cut On for n=1, or Auto Cut Off for n=0 for the currently selected form  
if the optional Printek FormsCutter is installed. When Auto Cut is turned on, the  
FormsCutter will automatically cut off each form as it is ejected from the printer.  
Example: The following escape sequence will select Auto Cut = On.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 42 31  
B
1
Cut Form  
ESC C  
Ejects the current form and cuts it off if the optional Printek FormsCutter is installed.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 43  
C
Reset  
ESC @  
Deletes all data on the current line and initializes the printer to the default settings for  
the current form.  
Restores the default horizontal tab stops. Default tab stops are set at every eighth  
column, i.e. column 8, 16, 24, 32, 40, etc.  
Resets top of form to the current position, so it is wise to be at top of form before  
performing this reset. Issuing a form feed will guarantee this.  
See the appendix on Printer Reset Conditions for more information.  
Escape Sequence:  
Hexadecimal:  
ESC @  
1B 40  
Page 7-18  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Forms and Tractors  
The FormsPro 4503 contains three sets of paper tractors (front, center, and rear). It is  
possible, via software, to change to a different set of tractors and continue printing.  
You may change to a different set of tractors by selecting a different form. The  
"Path:" value in the "Setup: FORM" menu specifies "Front", "Center", or "Rear" for  
each form that is defined. When a form is selected, the associated set of tractors is  
also automatically selected.  
Load Form  
ESC L n  
Causes the current line to be printed, and then loads paper and form parameters for  
form n. 0³ n³ 9. If form n is already loaded, this sequence is ignored. If not, the  
current form will be unloaded, the parameters for form n will be selected, and the  
printer will go offline to wait for the operator to install the new form and place the  
printer back online. In the FormsPro 4503 the same happens unless selecting form n  
also selects a different paper path. In that case, the current form is unloaded, the  
tractors are moved to engage the new path, the new form is loaded, and printing may  
continue.  
The printer will not unload the current form if a previously printed form has not been  
torn off. In this case, the printer will go offline, sound the bell, and display the  
message "Tear Off Paper". When an operator tears off the paper and places the  
printer back online, the printer will unload the current form and continue.  
If the printer is unable to load the new form, it will sound the bell and display the  
message "No Paper to Load". A "Paper Out" error will occur and the printer will go  
offline to wait for an operator to clear the error.  
Example: The following escape sequence will load form 2.  
Escape Sequence:  
Hexadecimal:  
ESC  
1B 4C 32  
L
2
Page 7-19  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Emulations  
Select Software Interface n  
ESC ESC n  
Selects the software interface n according to the table below.  
n
0
1
2
3
4
5
6
Software Interface  
Test (reserved for factory use)  
ANSI X3.64 Emulation  
Epson FX Emulation  
Bar Code Mode (optional)  
IBM Proprinter Emulation  
DEC LA120 Emulation  
TTY Emulation  
7
Printek Emulation  
?
@
Previously Selected Emulation  
Default Emulation  
Overrides the "Mode:" value in the "Setup: INTERFACE" menu.  
BarberPole" and "Mode: Hex Dump" cannot be overridden.  
"Mode:  
A numeric value for n may be specified in two different ways, with equivalent results:  
a single byte with a value of 00 to 07 hex, or a single printable ASCII character "0" to  
"7" (30 to 37 hex).  
If more than one emulation has been selected, ESC ESC ? will return to the  
previously selected emulation. This is particularly useful when the previous  
emulation is unknown. Please beware that the memory (stack) is only one level deep.  
ESC ESC @ will return to the default emulation, as specified by the "Mode:" value in  
the "Setup: INTERFACE" menu.  
This chapter describes Printek emulation. If a different interface is selected, the  
control codes and escape sequences described in this chapter will no longer be  
applicable.  
Example: The following escape sequences will select Printek emulation, load form  
one, and then return to the previous emulation.  
Escape Sequence:  
Hexadecimal:  
ESC ESC  
7
ESC  
L
1
ESC ESC  
?
1B 1B 07 1B 4C 01 1B 1B 3F  
Page 7-20  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printek Emulation  
Control Codes and Escape Sequences  
Sorted Alphabetically  
BEL  
BS  
Bell  
Backspace  
CR  
DC3  
Carriage Return  
Deselect Printer  
m DPI Graphics  
m DPI Graphics  
Reset  
ESC # m n1 n2 data  
ESC * m n1 n2 data  
ESC @  
ESC A n  
ESC D n  
ESC E n  
ESC ESC n  
ESC F n  
ESC FF n  
ESC G n  
ESC H n1 n2  
ESC HT n1 n2 ... nx NUL  
ESC I n  
ESC L n  
ESC LF n  
ESC R  
ESC S n  
ESC SP n  
ESC U n  
ESC V n1 n2  
ESC VT n1 n2 ... nx NUL  
ESC W n  
ESC \ n  
Automatic Modes  
Double-Strike Mode  
Emphasized Mode  
Select Software Interface n  
Select Font  
Set Form Length in Lines  
Modify Print Head Gap  
Set Left and Right Margin  
Set Horizontal Tab Stops  
Set Print Head Force  
Load Form  
Set Line Spacing to n/288"  
Reset Horizontal and Vertical Tab Stops  
Select Script Modes  
Set character Spacing  
Unidirectional Mode  
Set Top and Bottom Margins  
Set Vertical Tab Stops  
Double-Wide Mode  
Print Single Character  
Reverse Line Feed  
ESC ^  
ESC _ n  
Underline Mode  
ETX  
End of Text  
FF  
Form Feed  
HT  
Horizontal Tab  
LF  
Line Feed  
VT  
Vertical Tab  
XOFF  
Deselect Printer  
Page 7-21  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Download from Www.Somanuals.com. All Manuals Search And Download.  
HEX DUMP MODE  
Hex dump mode provides a way to print, in a readable form, all the data received by  
the printer. This tool is useful to programmers for diagnosing problems with control  
codes and escape sequences sent to the printer. Hex dump mode may also be used to  
detect what commands are being sent by a particular software application to help  
determine which emulation mode is needed for that application.  
To select hex dump mode, specify the value "Mode: Hex Dump" in the "Setup:  
INTERFACE" menu. Be sure to note the emulation currently being used before  
changing it to "Hex Dump".  
A sample hex dump is shown below. Note that each line shows sixteen characters,  
first in hexadecimal format, then in printable ASCII format. All unprintable ASCII  
characters (printable characters are from 21 hex to 7E hex inclusive) are represented  
by a period.  
54686973 20697320 61207361 6D706C65  
20686578 2064756D 7020746F 20696C6C  
75737472 61746520 68657820 64756D70  
666F726D 61740D0A  
This.is.a.sample  
.hex.dump.to.ill  
ustrate.hex.dump  
format..  
When the printer is executing in hex dump mode, control characters and escape  
sequences sent to the printer are not recognized or processed. The hexadecimal  
representation of the control characters and escape sequences will appear in the hex  
dump, but no other special processing will occur.  
In particular, note that ETX/ACK handshake will not operate properly in hex dump  
mode. When an ETX is received by the printer, its hexadecimal representation will  
be printed in the hex dump, but no ACK will be sent to the host computer. When  
using the printer in hex dump mode, it is recommended that the printer be configured  
for parallel I/O, serial I/O with hardware handshake, or serial I/O with XON/XOFF  
handshake.  
To exit hex dump mode, restore the previous "Mode:" value in the "Setup:  
INTERFACE" menu.  
Page 8-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Download from Www.Somanuals.com. All Manuals Search And Download.  
OPTIONAL  
COAXIAL/TWINAXIAL INTERFACE  
Introduction  
This appendix describes the automatic port switching between the coaxial/twinaxial  
port and the parallel port available as a part of this interface (this interface replaces  
the printer's standard parallel interface). This appendix also describes how to send  
control codes and escape sequences to the printer through the coaxial/twinaxial port.  
For information on installation and configuration of this interface, please refer to the  
FormsPro 4000 Series Operator's Manual.  
Automatic Port Switching  
For your convenience, a parallel interface is also provided as part of the  
coaxial/twinaxial interface. The interface will automatically switch to receive data  
from either the coaxial/twinaxial port or the parallel port after the time out specified  
on the configuration dip switches (SW1-7 & SW1-8).  
The automatic switching will perform a Form Feed and reset the printer to the  
appropriate configuration as described in the following paragraphs each time a switch  
occurs. Some of the extra form feeds may be suppressed by selecting "FF at TOF:  
No" in the Interface menu. The automatic switching may cause unexpected results if  
escape sequences are being used and there are pauses longer than the specified time  
out in the data stream.  
When data is received at the coaxial/twinaxial port, the interface will automatically  
switch the printer to Printek emulation and select the EBCDIC font. Therefore, the  
control codes and escape sequences described in the Printek Emulation chapter apply  
when received at this port. How to send control codes and escape sequences to the  
printer through the coaxial/twinaxial port is described below in the  
"Coaxial/Twinaxial Command Interpreter" section.  
When data is received at the parallel port, the interface will automatically switch the  
printer to the default emulation selected in the Interface menu and select the default  
parameters set for the current form in the Forms menu. In this case, the control codes  
and escape sequences described in the chapter for the default emulation apply.  
Page A-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Optional Coaxial/Twinaxial Interface  
Command Interpreter  
A user friendly command interpreter has been built into the coaxial/twinaxial  
interface. This feature allows you to send any hexadecimal character or string of  
characters to the printer through the coaxial/twinaxial port.  
The logical not character (__) used below may be shown as the carat (^) on some  
keyboards. Either character is usually the accessed as a SHIFT-6 on the main  
keyboard.  
The command interpreter is enabled by receiving "__ONN" and disabled by  
receiving "__OFF". The default is "__OFF".  
If enabled, the command interpreter examines all printable data received from the  
host for the string "__HEX" Once this string is found, then all EBCDIC characters  
following are converted to hexadecimal and sent to the printer. The conversion  
process is terminated by receiving an "@" character. Receiving any non-hexadecimal  
character during the conversion process will also terminate the conversion. Spaces  
may be included between pairs of hex digits for readability.  
Example:  
The following string will cause the interface command interpreter to  
send the ESC L n sequence (see the "Forms and Tractors" section in the Printek  
emulation chapter) to the printer to load form number two.  
Turn the command interpreter on by sending  
__ONN  
then send  
__HEX 1B 4C 32 @  
in which the hexadecimal character 1B is an Escape character, the  
hexadecimal character 4C is the ASCII character "L", and the hexadecimal  
character 32 is the ASCII character "2".  
The command interpreter should now be turned off by sending  
__OFF  
to prevent any inadvertent triggering of the interpreter by random  
combinations of data.  
Page A-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Optional Coaxial/Twinaxial Interface  
To assist in verifying that the proper EBCDIC characters are being sent to the  
coaxial/twinaxial port from the host, refer to the interface diagnostics section in the  
coaxial/twinaxial appendix in the Operator's Manual for information on how to use  
the Code Dump mode of the interface.  
To verify that the interface is sending the correct ASCII characters to the printer, see  
the Hex Dump chapter in this manual.  
Page A-3  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Download from Www.Somanuals.com. All Manuals Search And Download.  
PRINTING BASIC BAR CODES  
Introduction  
This section describes the control codes and escape sequences comprising bar code  
emulation. This emulation may be selected by specifying "Mode: Bar Codes" in the  
"Setup: INTERFACE" menu, or via software with the ESC ESC 3 sequence. While  
this emulation is selected, control codes and escape sequences from other emulations  
are not available.  
Control codes and escape sequences are used to control printer operation. An ASCII  
control code is a single character in the range 00 hex through 1F hex, and 7F hex.  
The ESC (Escape) control code (1B hex) is used to introduce character strings called  
escape sequences, which provide an extension of the commands available with ASCII  
control codes.  
The bar code interface was designed to primarily use printable ASCII characters,  
instead of relying on control codes and escape sequences. The printable ASCII caret  
character "^" is used to introduce most bar code sequences.  
Spaces are used when documenting sequences to increase readability. The spaces  
within the sequences are for readability only; they are not part of the sequences  
themselves. Characters that appear in italics (such as "n") are not sent to the printer  
as is; they are used as a place holder indicating that some value must be supplied.  
Multiple character strings without intervening spaces typically represent control  
codes. For example, FF is the Form Feed control code (0C hex), not two "F"  
characters (46 46 hex). An ASCII Control Code Table with hexadecimal equivalents  
is contained in the appendices for your convenience. This may be helpful when  
analyzing a hex dump printed by the printer.  
Please note that bar code emulation is essentially a graphics preprocessor, whose sole  
purpose is to print bar codes. It is not possible to print normal text in bar code  
emulation. In order to mix text and bar codes, the text must be printed in some other  
emulation, before or after the bar codes are printed in bar code emulation.  
Page B-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
The Printek FormsPro 4000 series printers internally support the following types of  
basic bar codes:  
Code 39 1:1:2:2 Ratio  
Code 39 1:1:3:3 Ratio  
Code 39 1:2:4:5 Ratio  
Code 39 1:1:2.5:2.5 Ratio (LOGMAR Standard Density)  
Code 39 1.5:1.5:3.5:3.5 Ratio (LOGMAR Medium Density)  
Code 39 2:2:4.5:4.5 Ratio (LOGMAR Low Density)  
2-of-5 1:1:3:X Ratio  
2-of-5 1:2:3:X Ratio  
Interleaved 2-of-5 BS Code 1:1:3:3 Ratio  
Interleaved 2-of-5 BS Code 1:2:4:5 Ratio  
Interleaved 2-of-5 BS Code 1.5:1.5:4.5:4.5 Ratio  
Interleaved 2-of-5 BS Code 2:2:6:6 Ratio  
Interleaved 2-of-5 C Code 1:1:2:2 Ratio  
Interleaved 2-of-5 C Code 1:1:2.5:2.5 Ratio  
Interleaved 2-of-5 C Code 1.5:1.5:3.5:3.5 Ratio  
Interleaved 2-of-5 C Code2:2:4.5:4.5 Ratio  
Page B-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
These bar codes can be automatically printed with the use of a few simple bar code  
sequences. The height of the bar codes is easily varied. Additionally, the dimensions  
of the bars and spaces may be varied to produce bar codes of different widths and  
ratios.  
Horizontal and vertical positioning sequences allow precise placement of a bar code  
on a label, or placement of multiple bar codes across and down the page.  
Page B-3  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
Bar Code Sequences  
To print bar codes, the following sequences are used in bar code mode:  
BAR CODE SEQUENCE  
FUNCTION  
BEL  
Sound the Bell.  
ESC ESC n  
ETX  
FF  
Change Emulation Mode  
ETX/ACK Software Handshake.  
Form Feed.  
LF  
Fractional Line Feed (to next line  
boundary)  
^BNxccc...c^G  
^BN9xddddccc...c^G  
^Htt  
^Jttd  
^Ttttd  
^-  
Horizontal Bar Code.  
Variable Width Horizontal Bar Code.  
Bar Code Height.  
Relative Vertical Tab.  
Absolute Horizontal Tab.  
Bar Code Pass Terminator.  
These bar code sequences are described in detail in the following sections.  
Measurements in Bar Code Mode  
All measurements in bar code mode are specified in tenths of an inch and/or dots.  
Bar codes are printed with a graphics resolution of 144 dots per inch both horizontally  
and vertically.  
All references to tenths of an inch are in actuality 14/144's of an inch.  
All references to dots are in actuality 1/144's of an inch. The range of dots that may  
be specified is 0 to 15. This range is represented using hexadecimal convention. The  
ASCII characters '0' to '9' represent 0 to 9 dots, respectively. The ASCII characters  
'A' to 'F', and 'a' to 'f', represent 10 to 15 dots, respectively.  
Page B-4  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
Entering/Exiting Bar Code Mode  
Bar code mode is entered by sending the escape sequence: ESC ESC ETX (27 27 03  
decimal, 1B 1B 03 hex).  
Bar code mode is used only to process the bar code sequences described in this  
document. While in bar code mode, other printable text, text mode escape sequences  
and control characters, graphics data, and graphics mode escape sequences and  
control characters should not be sent to the printer.  
To exit bar code mode, use the sequence ESC ESC ? (27 27 63 decimal, 1B 1B 3F  
hex) to return to the previously selected emulation mode, or you may use a different  
ESC ESC n sequence to select a different emulation mode.  
The Bar Code Control Character  
Except for a few ASCII control characters supported by bar code mode, all bar code  
sequences are introduced by the “bar code control character”. The “bar code control  
character” is the printable ASCII caret character “^” (94 decimal, 5E hex).  
Note in particular that the ESC control code (27 decimal, 1B hex) is not used in bar  
code mode. When the caret character “^” is seen in this chapter, it does not mean  
ESC and it does not mean “control-_” !  
Other Control Characters  
BEL is processed and causes the printer to ring the bell. This is supported so that you  
may annoy the printer operator without exiting bar code mode.  
ETX is processed so that ETX/ACK software handshake will work in bar code mode.  
(As an aside, XON/XOFF software handshake will also work in bar code mode.  
However, XON/XOFF characters are transmitted only from the printer to the host;  
XON/XOFF characters should not be sent to the printer.)  
FF is supported so that you may easily reach top of form without exiting bar code  
mode.  
LF advances the paper to the next line feed boundary at the currently selected line  
pitch. If already positioned at a line feed boundary, this will peform a full line feed, if  
not a partial line feed will be performed to position the paper at the next line. This  
allows the paper to be positioned properly for text printing after bar code mode is  
exited.  
All other control characters are ignored in bar code mode.  
Page B-5  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
Bar Code Definition  
The sequence used to define a horizontal bar code is  
^BNxccc...c^G  
^B  
Two Character Sequence Identifier for  
Horizontal Bar Code Definition.  
N
x
Reserved Parameter.  
Bar Code Type.  
“a”  
“b”  
“c”  
“d”  
“e”  
“f”  
“g”  
“h”  
“i”  
= Code 39 1:1:2:2 Ratio  
= Code 39 1:1:3:3 Ratio  
= Code 39 1:2:4:5 Ratio  
= Code 39 LOGMAR Standard Density  
= Code 39 LOGMAR Medium Density  
= Code 39 LOGMAR Low Density  
= 2-of-5 1:1:3:X Ratio  
= 2-of-5 1:2:3:X Ratio  
= Interleaved 2-of-5 BS Code 1:1:3:3 Ratio  
= Interleaved 2-of-5 BS Code 1:2:4:5 Ratio  
= Interleaved 2-of-5 BS Code 1.5:1.5:4.5:4.5 Ratio  
= Interleaved 2-of-5 BS Code 2:2:6:6 Ratio  
“j”  
“k”  
“l”  
“m” = Interleaved 2-of-5 C Code 1:1:2:2 Ratio  
“n”  
“o”  
“p”  
= Interleaved 2-of-5 C Code 1:1:2.5:2.5 Ratio  
= Interleaved 2-of-5 C Code 1.5:1.5:3.5:3.5 Ratio  
= Interleaved 2-of-5 C Code2:2:4.5:4.5 Ratio  
ccc...c  
^G  
Characters to be Bar Coded.  
Sequence Terminator.  
Required to signal end of character data.  
The width of a defined bar code is predetermined by the definition of the bar code  
type. The width of all bars and spaces is automatically set.  
Example:  
The following sequence defines a Code 39 LOGMAR bar code of standard density.  
The characters “12345” are encoded in the bar code.  
^BNd12345^G^-  
Example:  
The same character data is represented below in a low density LOGMAR bar code.  
^BNf12345^G^-  
Page B-6  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
Variable Width Bar Code Definition  
The sequence used to define a variable width, horizontal bar code is  
^BN9xddddccc...c^G  
^B  
Two Character Sequence Identifier for  
Horizontal Bar Code Definition.  
N
9
Reserved Parameter.  
Flags Variable Width.  
x
Bar Code Type.  
“a” = Code 39 1:1:2:2 Ratio  
“b”= Code 39 1:1:3:3 Ratio  
“c” = Code 39 1:2:4:5 Ratio  
“d”= Code 39 LOGMAR Standard Density  
“e” = Code 39 LOGMAR Medium Density  
“f” = Code 39 LOGMAR Low Density  
“g”= 2-of-5 1:1:3:X Ratio  
“h”= 2-of-5 1:2:3:X Ratio  
“i” = Interleaved 2-of-5 BS Code 1:1:3:3 Ratio  
“j” = Interleaved 2-of-5 BS Code 1:2:4:5 Ratio  
“k”= Interleaved 2-of-5 BS Code 1.5:1.5:4.5:4.5 Ratio  
“l” = Interleaved 2-of-5 BS Code 2:2:6:6 Ratio  
“m” = Interleaved 2-of-5 C Code 1:1:2:2 Ratio  
“n”= Interleaved 2-of-5 C Code 1:1:2.5:2.5 Ratio  
“o”= Interleaved 2-of-5 C Code 1.5:1.5:3.5:3.5 Ratio  
“p”= Interleaved 2-of-5 C Code2:2:4.5:4.5 Ratio  
dddd  
Width of all Bars and Spaces.  
Includes Number of Dots in: Narrow Bar, Narrow Space,  
Wide Bar, Wide Space; respectively.  
Range of d is 0 to F (0 to 15 dots).  
ccc...c  
^G  
Characters to be Bar Coded.  
Sequence Terminator.  
Required to signal end of character data.  
When defining a variable width bar code, first choose a bar code type that matches  
the desired bar code. Then specify the width of the bars and spaces to achieve the  
desired bar code density and wide:narrow ratios.  
Example:  
Bar code type “a” defines a rather dense Code 39 bar code with 1:1:2:2 ratio.  
^BNa12345^G^-  
Page B-7  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
The following sequence will print the same bar code, except the bar code will be four  
times as wide.  
^BN9a448812345^G^-  
Example:  
Note that when choosing the bar code type off which the variable width bar code will  
be based, ratio is irrelevant. If a 2-of-5 bar code with ratio 3:3:9:9 (not supported  
directly) is desired, it may be derived from bar code types “g” and “h”. The  
following variable width bar code definitions all produce exactly the same result.  
^BN9g339912345^G^-  
^BN9h339912345^G^-  
Choosing any other bar code type will not achieve the desired result. The following  
bar code has the desired ratio, but it is a Code 39 instead of a 2-of-5 bar code.  
^BN9a339912345^G^-  
Page B-8  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
Bar Code Height  
The sequence used to specify bar code height is  
^Htt  
^H  
Two Character Sequence Identifier for  
Bar Code Height.  
tt  
Height, in Tenth Inches.  
Range is 01 to 99 (0.1 to 9.9 inches).  
If this sequence is not used, default bar code height is 0.3 inches. All bar codes  
printed together horizontally across the page must be the same height. If height is  
specified more than once, the latest specified height will be used.  
Example:  
To print a bar code that is only 0.1 inch high.  
^H01^BNe12345^G^-  
It would generally not be desireable to print a bar code with such a short height,  
because scanning of the bar code would be difficult. In most cases, the wider the bar  
code, the higher the bar code for ease of scanning  
Example:  
To print a bar code that is 1.0 inch high.  
^H10^BNe12345^G^-  
Example:  
Note that increasing the height of a bar code has no effect on the width of the bar  
code. To print a very large bar code, both the height and the width may need to be  
increased. The following sequences double the width of the medium density  
LOGMAR bar code, while also increasing its height.  
^H10^BN9e337712345^G^-  
Page B-9  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
Relative Vertical Tab  
The sequence used to skip vertical space is  
^Jttd  
^J  
Two Character Sequence Identifier for  
Relative Vertical Tab.  
ttd  
Vertical Distance, in Tenth Inches plus Dots.  
Range of tt is 00 to 99 (0.0 to 9.9 inches).  
Range of d is 0 to F (0 to 15 dots).  
The distance specified is relative to the current vertical position.  
Example:  
To print multiple bar codes down the page. Each bar code is 0.2 inches high, and is  
separated from other bar codes by 0.1 inch of white space.  
^H02^BNd01^G^-^J010^BNd02^G^-^J010^BNd03^G^-  
Absolute Horizontal Tab  
The sequence used for horizontal positioning is  
^Ttttd  
^T  
Two Character Sequence Identifier for  
Absolute Horizontal Tab.  
tttd  
Horizontal Distance, in Tenth Inches plus Dots.  
Range of ttt is 000 to 136 (00.0 to 13.6 inches).  
Range of d is 0 to F (0 to 15 dots).  
The horizontal position specified is an absolute distance, with respect to the left edge  
of the paper. Remember that a tenth of an inch is actually 14/144ths of an inch, so the  
actual distance tabbed may be slightly shorter than expected.  
Example:  
To print multiple bar codes across the page. Bar codes are printed approximately 0,  
2, and 4 inches from the left edge of the paper.  
^H02^BNd01^G^T0200^BNd02^G^T0400^BNd03^G^-  
Page B-10  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
Bar Code Pass Terminator  
The sequence used to terminate a bar code pass is ^-.  
A bar code pass may contain vertical tabs (should precede all bar code definitions),  
height specification, bar code definitions, horizontal tabs, etc. Until the bar code pass  
terminator is received, no bar codes will be printed. When the pass terminator is  
received, all bar codes defined for the pass will be printed.  
The following examples will help clarify use of the pass terminator. Note the very  
different results obtained by omitting or inserting the pass terminators.  
Example:  
To print multiple bar codes across the page.  
^H02^BNd01^G^T0200^BNd02^G^T0400^BNd03^G^- (Correct)  
^H02^BNd01^G^-^T0200^BNd02^G^-^T0400^BNd03^G^-  
(Incorrect)  
Example:  
To print multiple bar codes down the page.  
^H02^BNd01^G^-^J010^BNd02^G^-^J010^BNd03^G^-  
(Correct)  
^H02^BNd01^G^J010^BNd02^G^J010^BNd03^G^-  
(Incorrect)  
Note that one bar code pass may not contain multiple bar codes separated by vertical  
tabs.  
Page B-11  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
Mixing Bar Codes and Text  
By combining the capabilities of text mode and bar code mode, it is possible to print  
text above, below, and along side bar codes.  
Example:  
To print a human-readable interpretation beneath a bar code. The characters  
“0123456789” are encoded in the following Code 39 standard density LOGMAR bar  
code.  
This bar code and interpretation was printed by first entering bar code mode and  
printing the bar code. While still in bar code mode, a relative vertical tab was done to  
space 0.1 inch below the bar code.  
^H05^BNd0123456789^G^-^J010  
Then, after returning from bar code mode to text mode, the character string  
0123456789” was printed.  
Example:  
To print text along side a bar code.  
To print this bar code and text, all text was first printed:  
“Text to left  
“of bar code.  
Text to right”  
of bar code.”  
While still in text mode, reverse paper motion was done to step back above the  
printed text. The bar code was then printed in bar code mode.  
^H05^T0140^BNd0123456789^G^-  
Page B-12  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
Description of Supported Bar Code Types  
Code 39  
The Code 39 character set contains 43 characters: 0-9, A-Z, -, ., $, /, +, %, and space.  
A maximum bar code density of approximately 5.5 characters per inch (using type  
“a”) may be obtained.  
The printer automatically inserts a narrow space between all valid data characters.  
Invalid data characters will cause blank space to be inserted in the bar code. A  
common character (*) is used for both start and stop delimiters. The printer will  
automatically insert the start/stop delimiter before and after each bar code string.  
Check digits are not automatically generated by the printer. If a check digit is to be  
used, it must be included in the bar code data by the programmer.  
2-of-5  
The 2-of-5 character set contains 10 characters, the decimal digits 0-9. A maximum  
bar code density of approximately 5.2 characters per inch (using type “g”) may be  
obtained.  
The printer automatically inserts a narrow space between all valid data characters.  
Invalid data characters will cause blank space to be inserted in the bar code. The  
printer will automatically insert the start delimiter before and the stop delimiter after  
each bar code string. Check digits are not automatically generated by the printer. If a  
check digit is to be used, it must be included in the bar code data by the programmer.  
Interleaved 2-of-5  
Interleaved 2-of-5 bar codes encode information in both the bars and spaces in order  
to create a denser bar code. There are two techniques used to perform this interleave.  
One technique takes the bars of an individual character and interleaves them into the  
spaces to create a narrower character. Since each character is interleaved  
individually, an even or odd number of characters may be interleaved without a  
problem. This technique is referred to as bar/space interleave, and is abbreviated in  
the previous tables as BS code.  
The second and more popular technique takes the bars of two adjacent characters and  
interleaves them together. All of the odd positioned characters are encoded in the  
bars and all of the even positioned characters are encoded in the spaces. The  
interleaving process requires an even number of characters to work correctly. This  
technique is referred to as character interleave and is abbreviated in the previous  
tables as C code.  
Page B-13  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printing Bar Codes  
The two types of interleaved 2-of-5 are not compatible and bar code readers designed  
to read one type will probably not read the other.  
Page B-14  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ASCII CHARACTER TABLES  
ASCII Control Code Definitions  
The following table is provided as a reference to the control character descriptions as  
provided by the ASCII definition. Not all of these definitions are supported by the  
FormsPro 4000 and some are emulation dependent. For more information consult the  
appropriate chapter for the emulation being used and/or the chapter on Input/Output  
Control Codes.  
Control  
Code  
Hexadecimal  
Value  
Description  
________________________ ___________  
NUL  
SOH  
STX  
ETX  
EOT  
ENQ  
ACK  
BEL  
BS  
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  
1C  
1D  
1E  
1F  
Null  
Start of Heading  
Start of Text  
End of Text  
End of Transmission  
Enquiry  
Acknowledge  
Bell  
Backspace  
HT  
Horizontal Tabulation  
Line Feed  
Vertical Tabulation  
Form Feed  
Carriage Return  
Shift Out  
Shift In  
Data Link Escape  
Device Control 1 (XON)  
Device Control 2  
Device Control 3 (XOFF)  
Device Control 4  
Negative Acknowledge  
Synchronous Idle  
End of Transmission Block  
Cancel  
End of Medium  
Substitute  
Escape  
File Separator  
Group Separator  
Record Separator  
Unit Separator  
LF  
VT  
FF  
CR  
SO  
SI  
DLE  
DC1  
DC2  
DC3  
DC4  
NAK  
SYN  
ETB  
CAN  
EM  
SUB  
ESC  
FS  
GS  
RS  
US  
Page C-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ASCII Character Tables  
Epson FX Fast Draft  
Epson FX Draft  
Epson FX Letter Quality  
Page C-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ASCII Character Tables  
PC Fast Draft  
PC Draft  
PC Letter Quality  
Page C-3  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ASCII Character Tables  
EBCDIC Fast Draft  
EBCDIC Draft  
EBCDIC Letter Quality  
Page C-4  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ASCII Character Tables  
Latin 2 (Slavic) Fast Draft  
Latin 2 (Slavic) Draft  
Latin 2 (Slavic) Letter Quality  
Page C-5  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ASCII Character Tables  
OCR A Font  
OCR B Font  
Page C-6  
Download from Www.Somanuals.com. All Manuals Search And Download.  
ASCII Character Tables  
Decimal to Octal to Hexadecimal Conversion Table  
Dec Oct Hex Char  
Dec Oct Hex Char  
Dec Oct Hex  
128 200 80  
129 201 81  
130 202 82  
131 203 83  
132 204 84  
133 205 85  
134 206 86  
135 207 87  
136 210 88  
137 211 89  
138 212 8A  
139 213 8B  
140 214 8C  
141 215 8D  
142 216 8E  
143 217 8F  
144 220 90  
145 221 91  
146 222 92  
147 223 93  
148 224 94  
149 225 95  
150 226 96  
151 227 97  
152 230 98  
153 231 99  
154 232 9A  
155 233 9B  
156 234 9C  
157 235 9D  
158 236 9E  
159 237 9F  
160 240 A0  
161 241 A1  
162 242 A2  
163 243 A3  
164 244 A4  
165 245 A5  
166 246 A6  
167 247 A7  
168 250 A8  
169 251 A9  
170 252 AA  
171 253 AB  
172 254 AC  
173 255 AD  
174 256 AE  
175 257 AF  
176 260 B0  
177 261 B1  
178 262 B2  
179 263 B3  
180 264 B4  
181 265 B5  
182 266 B6  
183 267 B7  
184 270 B8  
185 271 B9  
186 272 BA  
187 273 BB  
188 274 BC  
189 275 BD  
190 276 BE  
191 277 BF  
Dec Oct Hex  
192 300 C0  
193 301 C1  
194 302 C2  
195 303 C3  
196 304 C4  
197 305 C5  
198 306 C6  
199 307 C7  
200 310 C8  
201 311 C9  
202 312 CA  
203 313 CB  
204 314 CC  
205 315 CD  
206 316 CE  
207 317 CF  
208 320 D0  
209 321 D1  
210 322 D2  
211 323 D3  
212 324 D4  
213 325 D5  
214 326 D6  
215 327 D7  
216 330 D8  
217 331 D9  
218 332 DA  
219 333 DB  
220 334 DC  
221 335 DD  
222 336 DE  
223 337 DF  
224 340 E0  
225 341 E1  
226 342 E2  
227 343 E3  
228 344 E4  
229 345 E5  
230 346 E6  
231 347 E7  
232 350 E8  
233 351 E9  
234 352 EA  
235 353 EB  
236 354 EC  
237 355 ED  
238 356 EE  
239 357 EF  
240 360 F0  
241 361 F1  
242 362 F2  
243 363 F3  
244 364 F4  
245 365 F5  
246 366 F6  
247 367 F7  
248 370 F8  
249 371 F9  
250 372 FA  
251 373 FB  
252 374 FC  
253 375 FD  
254 376 FE  
255 377 FF  
0
1
2
3
4
5
6
7
8
9
000 00 NUL  
001 01 SOH  
002 02 STX  
003 03 ETX  
004 04 EOT  
005 05 ENQ  
006 06 ACK  
007 07 BEL  
64 100 40  
65 101 41  
66 102 42  
67 103 43  
68 104 44  
69 105 45  
70 106 46  
71 107 47  
72 110 48  
73 111 49  
74 112 4A  
75 113 4B  
76 114 4C  
77 115 4D  
78 116 4E  
79 117 4F  
80 120 50  
81 121 51  
82 122 52  
83 123 53  
84 124 54  
85 125 55  
86 126 56  
87 127 57  
88 130 58  
89 131 59  
90 132 5A  
91 133 5B  
92 134 5C  
93 135 5D  
94 136 5E  
95 137 5F  
96 140 60  
97 141 61  
98 142 62  
99 143 63  
100 144 64  
101 145 65  
102 146 66  
103 147 67  
104 150 68  
105 151 69  
106 152 6A  
107 153 6B  
108 154 6C  
109 155 6D  
110 156 6E  
111 157 6F  
112 160 70  
113 161 71  
114 162 72  
115 163 73  
116 164 74  
117 165 75  
118 166 76  
119 167 77  
120 170 78  
121 171 79  
122 172 7A  
123 173 7B  
124 174 7C  
125 175 7D  
126 176 7E  
@
A
B
C
D
E
F
G
H
I
010 08  
011 09  
BS  
HT  
10 012 0A LF  
11 013 0B VT  
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
12 014 0C  
FF  
13 015 0D CR  
14 016 0E SO  
15 017 0F  
SI  
16 020 10 DLE  
17 021 11 XON  
18 022 12 DC2  
19 023 13 XOFF  
20 024 14 DC4  
21 025 15 NAK  
22 026 16 SYN  
23 027 17 ETB  
24 030 18 CAN  
25 031 19 EM  
26 032 1A SUB  
27 033 1B ESC  
28 034 1C  
FS  
\
29 035 1D GS  
30 036 1E RS  
31 037 1F US  
]
^
_
`
32 040 20  
33 041 21  
34 042 22  
35 043 23  
36 044 24  
37 045 25  
38 046 26  
39 047 27  
40 050 28  
41 051 29  
42 052 2A  
43 053 2B  
44 054 2C  
45 055 2D  
46 056 2E  
47 057 2F  
48 060 30  
49 061 31  
50 062 32  
51 063 33  
52 064 34  
53 065 35  
54 066 36  
55 067 37  
56 070 38  
57 071 39  
58 072 3A  
59 073 3B  
60 074 3C  
61 075 3D  
62 076 3E  
63 077 3F  
SP  
!
a
"
b
c
#
$
%
&
'
(
)
d
e
f
g
h
i
*
+
,
j
k
l
-
m
n
o
p
q
r
.
/
0
1
2
3
4
5
6
7
8
9
:
s
t
u
v
w
x
y
z
;
{
<
=
>
?
|
}
~
127 177 7F DEL  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Download from Www.Somanuals.com. All Manuals Search And Download.  
PRINTER RESET CONDITIONS  
The following list describes what conditions are assumed whenever the printer is  
powered on, the SETUP mode is exited, or a reset escape sequence is received when  
the printer is operating in an emulation mode which supports such a sequence.  
This list includes all variables which may be modified by the user for all emulations  
even though some emulations cannot modify all the variables shown. Refer to the  
appropriate chapter for the emulation being used.  
Variable Reset Condition  
_______________ _______________  
tractor path according to form setup  
character pitch according to form setup  
left margin according to form setup  
line pitch according to form setup  
form length according to form setup  
top margin according to form setup  
bottom margin according to form setup  
scroll distance according to form setup  
font according to form setup  
impact force according to form setup  
impact mode according to form setup  
language according to form setup  
normal/slashed zero according to form setup  
top of form set to current position  
text in an incomplete line discarded  
input buffer cleared (unless reset from host)  
control of data bit 8 accepted as received  
control character symbols according to interface setup  
italics off  
compressed off  
double strike off  
double wide off  
elite off  
emphasized off  
superscript/subscript off  
Page D-1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Printer Reset Conditions  
underline off  
Page D-2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
GLOSSARY  
ANSI  
ASCII  
American National Standards Institute.  
American Standard Code for Information Interchange.  
baud rate  
The rate at which characters are transmitted over a serial  
interface. This is usually the same as bits per second.  
binary  
Base two numbering system. Digits are represented by the  
characters 0 and 1.  
bit  
A single binary digit.  
control code  
A single, non-printing character which is used to control  
the configuration or operation of the printer.  
character pitch  
cpi  
The horizontal spacing of characters. Measured in cpi.  
Characters per inch.  
cps  
Characters per second.  
current line  
current print position  
The line upon which the next character will be printed.  
The column on the current line where the next character  
will be printed.  
default  
dpi  
Value or configuration assumed when the printer is  
powered on or reset.  
Dots per inch. Generally used to refer to graphics density  
or resolution.  
draft  
Refers to the draft (high speed) font.  
EBCDIC  
Extended Binary Coded Decimal Interchange Code.  
escape sequence  
String of characters beginning with the escape (ESC)  
character which is used to control the configuration or  
operation of the printer. The characters which are part of  
this string are not printed.  
Glossary 1  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Glossary  
font  
A group of characters of a given shape or style.  
hexadecimal  
Base sixteen numbering system. Digits are represented by  
the characters 0 through 9 and a through f.  
interface  
LCD  
The connection between the printer and the host computer.  
Liquid crystal display.  
LED  
Light emitting diode.  
line pitch  
lpi  
The vertical spacing of characters. Measured in lpi.  
Lines per inch.  
LQ  
Letter Quality.  
MSB  
Most significant bit. In a character, this refers to bit seven  
(of 0 to 7).  
octal  
Base eight numbering system. Digits are represented by  
the characters 0 through 7.  
off-line  
Refers to the state of the printer when the "ONLINE"  
indicator is off and the printer does not respond to the host  
computer.  
on-line  
Refers to the state of the printer when the "ONLINE"  
indicator is on and the printer is responding to the  
commands and text received from the host computer.  
OQ  
Optical Quality.  
parity  
A method used for detecting errors within a single  
character transmitted or received via an interface.  
reset  
Initialization of various operating parameters of the printer  
to the value or state assumed when the printer is powered  
on.  
top of form  
The vertical position where the first line is printed on the  
paper. Also the position the paper is advanced to when a  
form feed (FF) character is received from the host or the  
Form Feed button is pressed on the printer's control panel.  
tractors  
Devices which control the movement of the paper through  
the printer.  
Glossary 2  
Download from Www.Somanuals.com. All Manuals Search And Download.  
Glossary  
Glossary 3  
Download from Www.Somanuals.com. All Manuals Search And Download.  

Pelco Security Camera C401M C User Manual
Petsafe Pet Fence PIG20 11041 User Manual
Philips Cordless Telephone CD1501B User Manual
Philips Flat Panel Television 14PF7846 User Manual
Philips Flat Panel Television 17pf9945 User Manual
Philips Handheld TV PT9000 User Manual
Philips Light Therapy Device HB 576 77 User Manual
Philips Surge Protector SBC RU 252 User Manual
Poulan Trimmer 530165403 User Manual
ProForm Treadmill 831296051 User Manual