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,
Code V is a trademark of QMS, Inc., QMS is a registered trademark of QMS, Inc.Printek is a registered
trademark of Printek, Inc.
Specifications subject to change without notice.
ii
TABLE OF CONTENTS
INTRODUCTION 1
How to Use This Manual 1
Printer Model Descriptions and Key Features 2
Selecting Emulations 2
Changing Forms/Tractor Paths 3
ANSI X3.64 EMULATION 5
Introduction 5
Control Codes and Escape Sequences Grouped by Function 7
Communications 7
Character Size and Line Spacing 8
Character Attributes 9
Horizontal Position 9
Vertical Position 10
Horizontal and Vertical Position 12
Form Length and Form Feed 12
Horizontal Tabs 13
Vertical Tabs 14
Printer Controls 16
Emulations 17
Control Codes and Escape Sequences Sorted Alphabetically 18
EPSON FX EMULATION 20
Introduction 20
Control Codes and Escape Sequences Grouped by Function 21
Communications 21
Character Size 22
Character Attributes 25
Character Sets 27
Line Pitch 30
Horizontal Position 31
Vertical Position 32
Form Length and Form Feed 32
Horizontal Tabs 34
Vertical Tabs 35
Horizontal Margins 36
Vertical Margins 36
Graphics 37
Printer Controls 39
Forms and Tractors 40
Emulations 41
Sorted Alphabetically 42
IBM PROPRINTER EMULATION 45
Introduction 45
Control Codes and Escape Sequences Grouped by Function 46
Communications 46
Character Size 47
Character Attributes 49
Character Sets 50
Line Pitch 51
Horizontal Position 52
Vertical Position 53
iii
Form Length and Form Feed 53
Horizontal Tabs 55
Vertical Tabs 55
Horizontal and Vertical Tabs 56
Horizontal Margins 56
Vertical Margins 57
Graphics 58
Printer Controls 59
Emulations 60
Control Codes and Escape Sequences Sorted Alphabetically 62
DEC LA120/210 EMULATION 65
Introduction 65
Control Codes and Escape Sequences Grouped by Function 67
Communications 67
Character Size 68
Character Attributes 69
Character Sets 69
Line Pitch 70
Horizontal Position 71
Vertical Position 71
Horizontal and Vertical Position 73
Form Length and Form Feed 73
Horizontal Tabs 74
Vertical Tabs 76
Horizontal Margins 78
Vertical Margins 79
Printer Controls 80
Graphics 81
Emulations 82
Control Codes and Escape Sequences Sorted Alphabetically 83
SIMPLE TTY EMULATION 85
Introduction 85
Control Codes and Escape Sequences Grouped by Function 86
Communications 86
Horizontal Position 86
Vertical Position 87
Form Length and Form Feed 87
Horizontal Tabs 88
Vertical Tabs 88
Printer Controls 88
Emulations 89
Control Codes and Escape Sequences Sorted Alphabetically 90
PRINTEK EMULATION 91
Introduction 91
Control Codes and Escape Sequences Grouped by Function 93
Communications 93
Character Size 94
Character Attributes 95
Character Sets 96
Line Pitch 97
Horizontal Position 97
Vertical Position 97
Form Length and Form Feed 98
Horizontal Tabs 99
Vertical Tabs 100
Horizontal and Vertical Tabs 100
iv
Horizontal Margins 101
Vertical Margins 102
Graphics 102
Printer Controls 104
Forms and Tractors 106
Emulations 107
Control Codes and Escape Sequences Sorted Alphabetically 108
GENICOM 3840 AND 3410 ANSI EMULATION 109
Introduction 109
Control Codes and Escape Sequences Grouped by Function 111
Communications 111
Character Size 111
Character Set 112
Horizintal Position 113
Vertical Position 115
Horiztonal Tab 116
Vertical Tab 117
Forms Setup 118
Graphics 119
Printer Control 120
Paper Shear 121
ANSI Bar Codes 121
Barcode Options 122
Paper Path 123
Emulations 124
Control Codes and Escape Sequences Sorted Alphabetically 125
CONFIGURATION DOWNLOAD 127
Remote Setup Line Definitions 128
Remote Setup Example File 130
HEX DUMP MODE 131
PRINTING BASIC BAR CODES 133
Introduction 133
Bar Code Sequences 135
Measurements in Bar Code Mode 135
Entering/Exiting Bar Code Mode 135
The Bar Code Control Character 136
Other Control Characters 136
Bar Code Definition 137
Variable Width Bar Code Definition 139
Bar Code Height 141
Relative Vertical Tab 143
Absolute Horizontal Tab 143
Bar Code Pass Terminator 145
Mixing Bar Codes and Text 146
Description of Supported Bar Code Types 147
ASCII CHARACTER TABLES 149
ASCII Control Code Definitions 149
PRINTER RESET CONDITIONS 157
GLOSSARY 159
v
INTRODUCTION
This manual describes the software interfaces supported by the FormsPro 4000se, FormsMaster 8000se and
PrintMaster 850 series printers. 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 either of the FormsPro4000se, FormsMaster 8000se or PrintMaster 850 Series Operator's Manual that accompanied your printer.
How to Use This Manual
Below is a brief description of the information contained in this manual.
INTRODUCTIONdescribes the contents of this manual. This chapter also provides you with an
introduction to the capabilities and operation of the FormsPro 4000se, FormsMaster 8000se and
PirntMaster 850 series printers.
ANSI X3.64 EMULATION, EPSON FX EMULATION, IBM PROPRINTER EMULATION,
DEC LA120/210 EMULATION, SIMPLE TTY EMULATION, PRINTEK EMULATION, AND
GENICOM 3840/3410 EMULATION are each designed as a stand-alone chapter. Each chapter
provides all the information necessary to write software for a particular emulation. You may wish to refer
only to the chapter for the emulation you are using, and skip the others.
CONFIGURATION DOWNLOAD describes how a simple text file may be used to set default values in
the printer’s non-volatile memory. This feature may be used as an alternative to using the printer’s front panel
setup and can be useful when configuring multiple printers or when configuring printers at a remote location.
HEX DUMP MODE describes the output of Hex Dump mode, and how it may be used to debug software
problems.
PRINTING BASIC BAR CODES describes how to use the built in bar coding capabilities.
ASCII CHARACTER TABLES provides a definition of ASCII control codes, character tables, and an
ASCII to Decimal to Octal to Hexadecimal conversion table.
PRINTER RESET CONDITIONS describes the state of the printer after a power up reset or receipt of a
reset command.
GLOSSARY provides a reference for printer related terms.
1
Introduction
Printer Model Descriptions and Key Features
The Printek FormsPro 4000se, FormsMaster 8000se and PrintMaster 850 series printers are high speed,
heavy duty serial dot matrix printers designed especially for printing upon hard to print forms. Such forms are
often not printed adequately by other printers. The printer is also designed to be factory floor rugged while
still quiet enough for the office. All models 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 4503se and
FormsMaster 8003se series printers 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 FormsMaster 8003se series printer is
also able to use the same form or paper in multiple paths and automatically continue printing from a different
path after one or two paths are out of paper. For more information, refer to the FormsMaster 8000se Series Operator’s Manual.
The printers come equipped with an industry standard parallel interface and an RS-232 serial interface.
Optional interfaces which are available include Ethernet 10/100BaseT Print Server, Wireless Ethernet Print
Server and a TN5250 LAN Interface
Standard bar coding capabilities include Code 39, Code 39 LOGMAR, 2-of-5, and Interleaved 2-of-5 bar
codes, and OCR-A and OCR-B fonts. Bar code options include the Imager Graphics Co-Processor which
expands the bar code capabilities beyond the standard Basic Bar Codes with QMS Code V v1 barcoding
compatibility, and the ImagerPlus Graphics Co-Processor which adds bar code and graphic capabilities with
QMS Code V v1 and v2 compatibility and Printronix IGP compatibility.
Other options include an external FormsCutter for the FormsPro 4000se Series printer and an internal
FormsCutter for the FormsMaster 8000se series printer which can be used to automatically cut off each
form or to separate reports. A specially designed print stand which can handle three boxes of paper, and a
Setup Module to make set up of multiple printers quick and easy are also available for these models.
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 “Emulation” value in the interface setup menu
for the interface being used. Frequently, the desired emulation is specified here, and never changed again.
Note that the emulation may only be specified for the serial, parallel, and EtherLink ports.
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.
2
Introduction
Changing Forms/Tractor Paths
As mentioned above, Printek FormsPro 4000se, FormsMaster 8000se and PrintMaster 850 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 4503se and FormsMaster 8003se series
printers, 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 forms menu using Setup as described in the
FormsPro 4000se orFormsMaster 8000se 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, 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.
3
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 setting “Emulation” to “ANSI X3.64” in the appropriate interface setup 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)
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 prvided on page 152 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 example.
5
ANSI X3.64 Emulation
This should clarify any ambiguity. The examples may also be helpful when analyzing a hex dump (see Hex
Dump chapter) 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.
6
ANSI X3.64 Emulation
Control Codes and Escape Sequences
Grouped by Function
Communications
End of Text ETX
If “ETX/ACK” is set to “On” in the serial interface setup 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.
Control code: ETX
Hexadecimal: 03
7
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 “Characters/Inch”
value and the “Lines/Inch” value in the forms setup menu.
Example: The following escape sequence will select 6 lpi and 10 cpi.
Escape Sequence: ESC [ 1 2 0 ; 7 2 SP G
Hexadecimal: 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: ESC [ 1 2 0 SP G
Hexadecimal: 1B 5B 31 32 30 20 47
Example: The following escape sequence will select 10 cpi without affecting line spacing.
Escape Sequence: ESC [ ; 7 2 SP G
Hexadecimal: 1B 5B 3B 37 32 20 47
8
ANSI X3.64 Emulation
Character Attributes
Select Graphic Rendition ESC [ n m
Selects the graphic rendition n from the following table.
nRendition
0 Normal
1 Emphasized
3 Italic
4 Underline
For italic mode to work correctly, an Epson FX font must be selected (check the “Font” value in the forms
setup menu). The other available fonts do not include italic characters.
Example: The following escape sequence will select emphasized mode.
Escape Sequence: ESC [ 1 m
Hexadecimal: 1B 5B 31 6D
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”
is set to “On” in the interface setup menu, a line feed will also be performed.
Control code: CR
Hexadecimal: 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: BS
Hexadecimal: 08
9
ANSI X3.64 Emulation
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: ESC [ 6 5 `
Hexadecimal: 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.
Causes the current line to be printed, and then advances the paper one line at the current line spacing. If
“Auto CR” is set to “On” in the interface setup menu, a carriage return will also be performed.
Control code: LF
Hexadecimal: 0A
Control code: IND
Hexadecimal: 84
Escape Sequence: ESC D
Hexadecimal: 1B 44
10
ANSI X3.64 Emulation
Partial Line Down PLD
(or) 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” is set to “On” in the interface setup menu, a carriage return will also be
performed.
Control code: PLD
Hexadecimal: 8B
Escape Sequence: ESC K
Hexadecimal: 1B 4B
Partial Line Up PLU
(or) 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” is set to “On” in the interface setup menu, a carriage return will
also be performed.
Control code: PLU
Hexadecimal: 8C
Escape Sequence: ESC L
Hexadecimal: 1B 4C
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: ESC [ 1 2 d
Hexadecimal: 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.
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: NEL
Hexadecimal: 85
Escape Sequence: ESC E
Hexadecimal: 1B 45
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 with the control panel setup. 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
“Form Length” value in the forms 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. Setting “Host FF at TOF” to “No” in the interface
setup menu (not available for all interfaces) allows a form feed to be ignored if the paper is already at top of
form. If “Auto CR” is set to “On” in the interface setup menu, a carriage return will also be performed.
Control code: FF
Hexadecimal: 0C
12
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: HT
Hexadecimal: 09
Set Horizontal Tab Stop HTS
(or) 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: HTS
Hexadecimal: 88
Escape Sequence: ESC H
Hexadecimal: 1B 48
Clear Horizontal Tab Stop ESC [ g
(or) 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: ESC [ g
Hexadecimal: 1B 5B 67
Clear all horizontal tab stops ESC [ 2 g
(or) ESC [ 3 g
Clears all currently set horizontal tab stops.
Escape Sequence: ESC [ 2 g
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” is set to “On” in the interface setup menu, a
carriage return will also be performed.
Control code: VT
Hexadecimal: 0B
Set Vertical Tab Stop VTS
(or) 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: VTS
Hexadecimal: 8A
Escape Sequence: ESC J
Hexadecimal: 1B 4A
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.
Clears all currently set vertical tab stops.
Escape Sequence: ESC [ 4 g
Hexadecimal: 1B 5B 34 67
14
ANSI X3.64 Emulation
15
ANSI X3.64 Emulation
Printer Controls
Bell BEL
Causes the printer's bell to sound.
Control code: BEL
Hexadecimal: 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 interface setup menu.
Cancels automatic carriage return mode. Overrides the “Auto CR” value in the interface setup menu.
Escape Sequence: ESC [ 2 0 l
Hexadecimal: 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 chapter on Printer Reset Conditions for more information.
Escape Sequence: ESC c
Hexadecimal: 1B 63
16
ANSI X3.64 Emulation
Emulations
Select Software Interface n ESC ESC n
Selects the software interface n according to the table below.
n Software Interface
0 Test (reserved for factory use)
1 ANSI X3.64 Emulation
2 Epson FX Emulation
3 Bar Code Mode (optional)
4 IBM Proprinter Emulation
5 DEC LA120/210 Emulation
6 TTY Emulation
7 Printek Emulation
; Remote Setup Mode
< Genicom 3840
= Genicom 3410
? Previously Selected Emulation
@ Default Emulation
Overrides the “Emulation” value in the interface setup menu.
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 “Emulation” value in the interface setup
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.
Control Codes and Escape Sequences
Sorted Alphabetically
ANSI X3.64 Emulation
BEL Bell
BS Backspace
CR Carriage Return
CSI Control Sequence Introducer
ESC D Line Feed
ESC E New Line
ESC ESC n Select Software Interface n
ESC H Set Horizontal Tab Stop
ESC J Set Vertical Tab Stop
ESC K Partial Line Down
ESC L Partial Line Up
ESC [ n1 ; n2 SP G Set Character and Line Spacing
ESC [ n ` Absolute Horizontal Tab
ESC [ n a Relative Horizontal Tab
ESC [ n d Absolute Vertical Tab
ESC [ n e Relative Vertical Tab
ESC [ g Clear Horizontal Tab Stop
ESC [ 0 g Clear Horizontal Tab Stop
ESC [ 1 g Clear Vertical Tab Stop
ESC [ 2 g Clear All Horizontal Tab Stops
ESC [ 3 g Clear All Horizontal Tab Stops
ESC [ 4 g Clear All Vertical Tab Stops
ESC [ 20 h Select Automatic Carriage Return
ESC [ 20 l Cancel Automatic Carriage Return
ESC [ n m Select Graphic Rendition
ESC c Reset
ETX End of Text
FF Form Feed
HT Horizontal Tab
HTS Set Horizontal Tab Stop
IND Line Feed
LF Line Feed
NEL New Line
PLD Partial Line Down
PLU Partial Line Up
VT Vertical Tab
VTS Set Vertical Tab Stop
18
ANSI X3.64 Emulation
19
ANSI X3.64 Emulation
EPSON FX EMULATION
Introduction
This section describes the control codes and escape sequences comprising Epson FX emulation. This
emulation may be selected by setting “Emulation” to “Epson” in the interface setup 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 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 Hex Dump chapter) printed by the printer.
Column and line numbers begin at zero, not at one. Keep this in mind when setting tabs, margins, etc.
20
ANSI X3.64 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: CAN
Hexadecimal: 18
Delete Character DEL
Deletes the last printable character from the current line. Does not affect any control codes or escape
sequences.
Control code: DEL
Hexadecimal: 7F
End of Text ETX
If “ETX/ACK” is set to “On” in the serial interface setup 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.
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: ETX
Hexadecimal: 03
21
ANSI X3.64 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 setting “Data Bits” to “7” in the interface setup menu.
Escape Sequence: ESC =
Hexadecimal: 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: ESC >
Hexadecimal: 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: ESC #
Hexadecimal: 1B 23
Deselect Printer DC3
(or) 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: DC3
Hexadecimal: 13
Character Size
The FormsPro, FormsMaster and PrintMaster series printers are 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
“Characters/Inch” value in the forms 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.
22
ANSI X3.64 Emulation
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 set “Characters/Inch” to “10” in the forms 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 “Characters/Inch” was not set to “10” in the forms menu, the specified default character pitch will be
selected instead of 10 cpi.
Escape Sequence: ESC P
Hexadecimal: 1B 50
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.
Escape Sequence: ESC M
Hexadecimal: 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: ESC g
Hexadecimal: 1B 67
Select Condensed Mode SI
(or) 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: SI
Hexadecimal: 0F
Escape Sequence: ESC SI
Hexadecimal: 1B 0F
23
ANSI X3.64 Emulation
Cancel Condensed Mode DC2
Cancels condensed mode set by SI or ESC SI.
Control code: DC2
Hexadecimal: 12
Select double-wide mode (one line) SO
(or) 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: SO
Hexadecimal: 0E
Escape Sequence: ESC SO
Hexadecimal: 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: DC4
Hexadecimal: 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: ESC W 1
Hexadecimal: 1B 57 31
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: ESC w 1
Hexadecimal: 1B 77 31
24
Loading...
+ 136 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.