Programmer's GuidePcOS Series 90PLUSChange History
Change History
Rev. M
Updated bookmarks in the Code Summary Table
Added Section 3.6.2.2 and Table 4
Updated MICR section
Added Euro Character on page 33
Corrected Cash Drawer Command on page 72
Updated “Service Information” section
Updated “Contacting Ithaca Peripherals” section
Rev. L
Clarified cash drawer connectors on page 144
Changed IEEE-1284 to IEEE 1284 and Code 3 of 9 to Code 39
Rev. K
Reformatted entire document
Corrected miscellaneous grammar and spelling mistakes
Rev. JUpdate for Firmware Rev. 2.24
Corrected Epson documentation
Added documentation for justified bar codes and readable printing of bar codes
Added documentation for Bar code 93
Rev. IUpdate for Firmware Rev. 2.21
Corrected documentation for ENQ 15, 17, and 20 commands; length was 40H changed to 40 decimal
Added [ESC] z (&%FR) from release commands
Added features to graphic-save
Added OCR overlay features
Corrected miscellaneous grammar and spelling mistakes
Rev. HUpdate for Firmware Rev. 2.15
Improved description of pass-through and multidrop
Added features to [ESC]a command
Added 90PLUS
Removed references to Ithaca Peripherals
Corrected description of Mechanical Test Mode
Updated several graphic examples
Rev. GUpdate for Firmware Rev. 2.13
Added narrow, 2.4 inch print zone
Added [ESC]mP, [ESC]q<n>, and [ENQ]<17> commands
Changed documentation on [ENQ] commands to reflect that they are no longer buffered
Documented Epson cash drawer option
Fixed right margin specifications
Rev. FUpdate for Firmware Rev. 2.11
Added functionality to the RESET commands
Enabled [DLE][ENQ] <3> EPOS
Added M50 extension commands
Added 270° rotated font and 5 x 7 fonts to [ESC]P commands
Changed IPCL command &%CC to accept 3 decimal digits, was 2 decimal digits
Corrected the description of the [ESC]J command. It does not start the next line at the left margin unless Auto-CR is on.
Updated the configuration table
Changed RS1284 references to IEEE-1284
Added Welsh and Thai character sets
Updated the cut command. The cutter does not have selectable cut. The cut command is now only 2 bytes.
Updated MICR section to include translation tables and field checking
Added 5 x 7 font to rotated print functions
Added sections on Windows Plug and Play
Added [ENQ]<20> (return all status) and [ENQ]<21> (return printer ID) commands
12/16/99Rev MPage i
Change HistoryPcOS Series 90PLUSProgrammer's Guide
Added commands to allow the host to define a unique code page
Added autocutter position information
Added multidrop addressing
Added, “The cash drawer will only provide 1.0 amp at 24V.”
Rev. EUpdate for Firmware Rev. 2.07
Added 50 international language code pages
Altered Character Sets I and II. The printer no longer supports Character Set I and II. The printer is always in Set II.
Changed IPCL &%CP to support 4-digit code page descriptions
Extended the EPOS [ESC]R to support enhanced language sets
Updated code page table descriptions
Removed the Prerelease Change History
Corrected minimum slip width specification in the text for Figure 4
Rev DUpdate for Firmware Rev 2.05
Updated and clarified descriptions in the communication section
Added description of CTS and DSR controls
Added MICR commands and references to MICR Programmer’s Guide
Updated configuration section to include MICR and communication CTS/RTS/DTR/DSR options
Added [ESC]y<2> and <3> commands to switch between EPOS and Normal modes
Added 4-inch resume on paper out
Rev CUpdate
Removed IPCL command for set rotated print line spacing
Shortened graphic-save buffer from 2014 characters to 2000
Removed second parameter of [ESC] [EM] B; set bar code height
Changed all validation and slip control IPCL commands to accept decimal parameters instead of binary
Removed set left and right margin IPCL commands
Removed set dynamic response from [ESC]y group and defined [ESC] to replace it
Updated inquire descriptions to reflect preprocessing of ENQ commands; previously, ENQ commands were processed with other commands.
Changed ENQ descriptions in the communication section to reflect command preprocessing
Reversed parallel port responses to ENQ 1, 2, 5, 6, and 11; updated CFG90 to match
Reversed serial port responses to ENQ 7 and 8; updated CFG90 to match
Redefined ENQ 9 to represent inquire buffer status
Added Epson mode [DLE] [EOT] and [DLE] [ENQ] commands
Rev BUpdate
Added eject wait and pause commands and configuration information
Added print suppress and display pass-through to both EPOS and Normal modes
Updated CFG90 to deal with the new modes
Rev AInitial Release
Page iiRev M12/16/99
Programmer's GuidePcOS Series 90PLUSDisclaimer
Disclaimer
Information in this publication is subject to change without notice. However, as product improvements become
available, Ithaca Peripherals will make every effort to provide updated information for the products described in
this publication.
Ithaca Peripherals cannot guarantee that changes in software and equipment made by other manufacturers, and
referred to in this publication, do not affect the applicability of information in this publication.
Copyright
1995-1999 Ithaca Peripherals. All rights reserved.
November 1999
Printed in USA.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any
means, mechanical, photocopying, recording, or otherwise, without the prior written permission of Ithaca
Peripherals.
Trademarks
PcOS is a registered trademark of Ithaca Peripherals. IBM is a registered trademark of International Business
Machines, Inc. Epson is a registered trademark of the Seiko Epson Corporation. Microsoft is a registered
trademark of Microsoft Corporation. Windows, Windows NT, and Plug and Play are trademarks of Microsoft
Corporation.
12/16/99Rev MPage iii
PcOS Series 90PLUSProgrammer's Guide
Page ivRev M12/16/99
Programmer’s GuidePcOS Series 90PLUSTable of Contents
Table of Contents
1Overview of the Series 90PLUS Printer........................................................................................................... 1
1.2What is in this book? ............................................................................................................................. 1
1.2.1Who should read this book?................................................................................................... 1
1.2.2What does it cover?............................................................................................................... 1
1.2.3Where can you find more information?.................................................................................. 2
3.6Printable Area ..................................................................................................................................... 11
4.2Application Development .................................................................................................................... 18
4.3Tables and Charts................................................................................................................................ 18
5Printer Control Codes.................................................................................................................................... 19
5.2Vertical Motion Control ...................................................................................................................... 22
5.3Character Font ..................................................................................................................................... 26
5.4International Character Sets and Code Pages ....................................................................................... 28
1.5Character Print Control ....................................................................................................................... 34
1.10 Bar codes............................................................................................................................................. 56
1.11 Station Control.................................................................................................................................... 59
8.3Serial Port ..........................................................................................................................................144
8.3.1Serial Port Features............................................................................................................144
8.3.2Serial Port Pin out..............................................................................................................144
8.3.2.1 Signal Levels .............................................................................................................145
8.3.3Serial Port Protocol ............................................................................................................145
10.1 Character Graphics.............................................................................................................................156
10.2 APA Graphics ....................................................................................................................................158
Page viiiRev M12/16/99
Programmer's GuidePcOS Series 90PLUSTable of Figures
Figure 2 Character forming.................................................................................................................................... 6
Figure 9 Validation print with normal and narrow print zones............................................................................. 13
Figure 10 Inserted slip using normal and narrow print zone ................................................................................. 14
Figure 11 Normal and narrow print zone rotated print ......................................................................................... 15
Figure 12 Multipart forms .................................................................................................................................... 15
Figure 13 Data sent to printer for a fine line feed ................................................................................................. 22
Figure 14 Example of fine line feed...................................................................................................................... 22
Figure 15 Examples of print at various character pitch ......................................................................................... 35
Figure 16 Data sent to printer for one-line double-wide print ............................................................................... 37
Figure 17 Example of one-line double-wide print................................................................................................. 37
Figure 18 Example of underline, enhanced, emphasized, superscript, and subscript print..................................... 42
Figure 20 PE to ENQ request timing.................................................................................................................... 83
Figure 21 Typical POS system ............................................................................................................................134
Figure 22 Host to printer link ..............................................................................................................................134
Figure 24 Parallel port data timing......................................................................................................................137
Figure 26 PE to ENQ request timing...................................................................................................................141
Figure 27 Serial port flow control using DTR......................................................................................................145
Figure 28 XON/XOFF serial port flow control ....................................................................................................146
Figure 29 Serial buffer operation.........................................................................................................................147
Figure 30 Print controller using data...................................................................................................................148
Figure 32 Receipt with extended graphic characters............................................................................................157
Figure 33 Receipt with APA graphics .................................................................................................................158
Figure 34 9-pin female to 9-pin female serial interconnect..................................................................................163
Figure 35 9-pin female to 25-pin female serial interconnect................................................................................163
12/16/99Rev MPage ix
Table of TablesPcOS Series 90PLUSProgrammer's Guide
Table of Tables
Table 1 Character specifications............................................................................................................................. 5
Table 2 Power input requirements.......................................................................................................................... 8
Table 4 Ten line validation option........................................................................................................................ 13
Table 5 Language table identification................................................................................................................... 29
Table 6 EPOS language table identification.......................................................................................................... 29
Table 21 Parallel port pin outs ............................................................................................................................143
Table 22 Serial bit rates ......................................................................................................................................144
Table 23 Serial port pin out.................................................................................................................................144
All Ithaca Peripherals Series 90PLUS printers come with a standard 24-month warranty covering both
parts and labor. An optional warranty, covering both parts and labor for an additional 12 months, may be
purchased separately.
For more information concerning the warranty options, please contact your dealer or the Sales Department
at Ithaca Peripherals. See “Contacting Ithaca Peripherals” on page 2.
1.1.2 Service Information
Ithaca Peripherals has a full service organization to meet your printer service and repair requirements.
If your printer needs service, please directly contact Ithaca Peripherals’ Technical Support Department at
(607) 257-8901 for a return authorization.
Ithaca Peripherals offers the following service programs to meet your needs:
• Extend Warranty
• Depot Repair
• Maintenance Contract
1.2 What is in this book?
1.2.1 Who should read this book?
This book is intended for system engineers or integrators. It contains the information needed to integrate
the Series 90PLUS Printer with a point-of-sale terminal and to program the terminal to communicate with
the printer.
1.2.2 What does it cover?
The programmer's guide provides the following material:
•Start-up information including diagnostics and fault conditions;
•Command descriptions;
•Character fonts;
•Printer features;
•Parallel and RS-232 interface information;
•Communications and buffers; and
•Command code reference tables.
12/16/99Rev MPage 1
OverviewPcOS Series 90PLUSProgrammer's Guide
1.2.3 Where can you find more information?
An Operator's Guide is available that describes the set up and use of the Series 90PLUS Printer. It
describes basic procedures such as changing paper; printing on a slip or form; and replacing the ribbon
cassette. A Maintenance Manual is also available. It shows how to repair the Series 90PLUS Printer and
lists the replacement parts. The Maintenance Manual is intended for trained, service technicians. For
information about ordering these books or programs, refer to the next section.
In addition, there are a number of drivers available that will support various environments.
Windows 95 Print Driver with DocumentationPart No. 100-9167
Windows NT 4.0 Print Driver with DocumentationPart No. 100-9170
OPOS Drivers with DocumentationPart No. 100-9732
MICR Programmer’s GuidePart No. 100-9094
Master Character Set DefinitionsPart No. 100-9785
1.2.4 Contacting Ithaca Peripherals
The Sales and Technical Support Departments will be able to help you with most of your questions.
Contact the Technical Support Department to receive technical support, order documentation, receive
additional information about the Series 90PLUS Printer, obtain information about your warranty, or send
a printer in for service. To order supplies or receive information about other Ithaca Peripherals products,
contact the Sales Department.
You may reach both the Sales and Technical Support Departments at the following address and telephone
or fax numbers:
Ithaca Peripherals
20 Bomax Drive
Ithaca, NY 14850
Main telephone(607) 257-8901
Main fax(607) 257-8922
Sales fax(607) 257-3868
Technical Support fax(607) 257-3911
Technical Support E-mailtechsupport@ithper.com
1.2.4.1 Internet Support
Ithaca Peripherals maintains an Internet web site. The address is http://www.ithper.com. On the
technical support page, you will find support information on all of our printers. The Series 90PLUS
Printer support pages offer the latest information. They include the current version of this manual;
program examples; test procedures; programming instructions; and all supported print drivers.
Page 2Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSGeneral Descriptions
2 General Descriptions
2.1 Series 90PLUS Models
There are four basic models of the Series 90PLUS Printer. They are:
Model 91PLUSReceipt printer;
Model 92PLUSReceipt/Journal printer;
Model 93PLUSReceipt/Journal/Validation printer; and
Model 94PLUSReceipt/Validation printer.
2.2 Standard Features
The following features are common to the entire family of printers:
• 340 cps logic-seeking print speed;
• 5 inches per second paper feed speed;
• 2.4 and 2.8 inch print zones;
• Snap on ribbon cassettes;
• Dual cash drawer drivers with status;
• Centronics parallel, IEEE 1284 or serial RS-232C interfaces;
• Configurable receiver buffers;
• Standard and Epson command emulations1;
• Standard all-points-addressable (APA) or EPOS bit-image graphics;
• Standard and EPOS International Character Sets;
• 8, 10, 12, 15, 17.1, 20, and 24 characters per inch (cpi) selections;
• Custom logo graphic print buffer in nonvolatile memory;
The Model 91PLUS receipt printer only provides receipt functions. The last line printed on the receipt is
within 0.7 inch of the tear-off or cut-off edge of the receipt. The receipt printing appears right-side up with the
total at the bottom as the receipt appears from the top of the printer and is presented to the operator.
The receipt printer handles one-, two-, or three-ply paper. The optional cutter is able to cut one- and two-ply
paper.
1
Other emulation’s can be made available. Contact Ithaca Peripherals’ Sales Department for more information.
12/16/99Rev MPage 3
General DescriptionsPcOS Series 90PLUSProgrammer's Guide
The receipt printer does not have the ability to validate or handle slips. Commands that operate validation and
slip modes of other Series 90PLUS Printers will not function.
2.4 Receipt/Journal Printer
The Model 92PLUS receipt/journal printer adds the journal feature to the Model 91PLUS receipt printer. The
journal take-up is able to rewind the second copy of the 3.5-inch diameter 2-ply paper roll (125 feet).
The receipt/journal printer does not have the ability to validate or handle slips. Commands that operate
validation and slip modes of other Series 90PLUS Printers will not function.
2.5 Receipt/Journal/Validation Printer
The Model 93PLUS printer adds an independent validation capability to the Model 92PLUS. There are two
methods of form validation on the Model 93PLUS.
1. Top insertion validation. The form is inserted from the top and extends out the left side and/or top of the
printer. It rests on a fixed form stop. Under software control, printing can be from a minimum of two lines
to a maximum of 17 lines at 42 characters. Throughout this manual, top insertion will be termed
“Validation Mode.”
2. Front inserted validation. The form is inserted from the front and extends out the left side and/or front of
the printer. In front insertion mode, the form is loaded to the first line of print under firmware control.
Printing then begins from the top of the form down. Throughout this manual, front insertion will be
termed “Slip Mode.”
All Series 90PLUS validation printers have both validation and slip modes. The validation/slip movement is
independently controlled from the movement of the receipt and journal. Either can be moved alone or in sync
with the receipt/journal movement. The validation/slip movement will be under software control but set to
independent validation by default.
2.6 Receipt/Validation Printer
The Model 94PLUS receipt/validation printer adds validation to the Model 91PLUS described above. The
Model 94PLUS is a Model 93PLUS without journal take-up.
Page 4Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSGeneral Specifications
3 General Specifications
3.1 Printing Specifications
Printing methodImpact dot matrix
Head wire arrangement9 pins in a line
Print wire diameter0.34 mm (0.012 inch)
Print wire pitch0.353 mm (0.013 inch)
Printing directionsBidirectional, logic-seeking
Print zone59.5 mm (2.4 inches) or 71.12 mm (2.83 inches)
Characters per second (cps)Refer to Table 1.
Characters per line (cpl)Refer to Table 1.
Characters per inch (cpi)Refer to Table 1.
All the character sets and modes are based on one of two character cells, 10 wide x 9 high or 12 wide x 9
high. Double-wide mode is twice the width of normal mode, 20 wide x 9 high or 24 wide x 9 high.
In utility print mode, the character cell consists of five full-dots and five half-dots horizontally by nine
full-dots vertically. The character is a 9 x 9 character. In high speed draft (HSD) mode, the character cell
is shortened by one half-dot and one full-dot column yielding a 7 x 9 character.
Each character is justified to the left of the cell. The first four columns of the full dots and the first three
columns of half dots are used to generate the character in high speed draft. In utility mode, the first five
columns of the full dots and the first four columns of the half dots are used. The last full-dot and the last
two half-dots are used for character spacing in both modes.
12/16/99Rev MPage 5
General SpecificationsPcOS Series 90PLUSProgrammer's Guide
1 3 5 7 9 11
1 3 5 7 9
The following illustration shows a single-wide character cell.
2 4 6 8 10
1
2
3
4
5
6
7
8
9
Character
spacing
High Speed Draft Mode
Figure 1 Single-wide character
The example above, which only holds true for the 12 cpi mode, shows full dots adjacent to each other in
the character cell. The 10 cpi mode allows a gap between adjacent full rows; 17 and 24 cpi allow an
overlap of full rows. The printer cannot print adjacent full and half dots in any single row. Some graphics
(double-density, half-speed) allow adjacent rows to be printed by slowing the print speed by half. Slowing
the print speed allows the time between half and full columns to be the same as the time between full
columns in full speed operation.
2 4 6 8 10 12
1
2
3
4
5
6
7
8
9
Character
spacing
Utility Mode
Full Dots
Half Dots
Descender (Rows 8 and 9)
and Underline (Row 9)
The following illustration shows the use of full and half dots as well as descenders to form characters.
1 3 5 7 9
2 4 6 8 10
1
2
3
4
5
6
7
8
9
Figure 2 Character forming
1 3 5 7 9
2 4 6 8 10
1 3 5 7 9
2 4 6 8 10
Page 6Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSGeneral Specifications
3.2 Physical Specifications
3.2.1 Dimensions
12.25” (311.2 mm)
7.30”
(185.4 mm)
6.0” (152.4 mm)
Figure 3 Physical dimensions
3.2.2Weight
Approximate weight10 pounds (4.5 kg)
Shipping weight13 pounds (5.9 kg)
3.3 Electrical Characteristics
3.3.1 Self-powered AC
The Series 90PLUS Printer is designed to be AC self-powered in domestic and international markets. The
printer is equipped with a universal input power supply that is designed to operate worldwide without
modification.
12/16/99Rev MPage 7
General SpecificationsPcOS Series 90PLUSProgrammer's Guide
Supply
Voltage
Rating (VAC)
100 - 24090 - 26447 - 63450.08 @ 120VAC
Table 2 Power input requirements
Supply
Voltage
Range (VAC)
Frequency
(Hz)
Rated
Power
(watts)
Current Idle
(amps)
0.04 @ 240VAC
Current Printing
(amps)
0.5 @ 120VAC
0.25 @ 240VAC
3.3.2 Interface Specifications
3.3.2.1 Serial
The serial interface is a standard RS-232 interface on a 9-pin, D-shell connector. It is defined as a
standard DTE device. A null modem cable is required to interface the printer to another DTE device
(a personal computer). See the serial port description later in this manual.
3.3.2.2 Parallel
The parallel port is a standard 25-pin, D-shell as defined in the IEEE 1284-A Standard. See the
parallel port description later in this manual.
3.3.2.3 Cash Drawer
The Series 90PLUS Printer supports dual cash drawers with status. The interface will provide status
and 24 VDC at up to 1.5 amps to the cash drawer. See the cash drawer interface description later in
this manual.
3.4 Media Specifications
3.4.1 Ribbon
Inking methodcartridge type, 70.9-inch (1.8 m) seamless ribbon with reinker
Ink colorblack or purple
Ribbon life at 25°C3 million (black) or 4.5 million (purple) characters to ink depletion
ManufacturerOnly Ithaca Peripherals approved ribbons should be used.
3.4.2 Receipt Paper
Paper feed methodfriction feed
Paper feed pitchdefault, 1/8 inch; can be set in units of 1/216 inch by software command
Paper width2.5, 3.0, or 3.25 inches (63.5, 76.2, or 82.6 mm)
Roll diameter3.5 inches (88.9 mm)
Paper thickness at 25°C0.003 - 0.0035 inch (0.076 - 0.089 mm)
Roll paper coreinside diameter 7/16 inch or more
2
Ribbon must be from an approved manufacturer and tested with a rolling ASCII test pattern using 15 cpi in HSD
mode.
2
Page 8Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSGeneral Specifications
Roll footage240 feet (7315.2 cm) typical
Paper low indicatorstriping starts at approximately 8 - 10 feet (243.8 - 300.5 cm) from end of roll
Receipt paper outPaper exhaust is sensed, and printing is prevented at end of roll.
3.4.3 Receipt/Journal Paper
Paper feed methodfriction feed
Paper feed pitchdefault, 1/8 inch; can be set in units of 1/216 inch by software command
Paper width2.5, 3.0, or 3.25 inches (63.5, 76.2, or 82.6 mm)
Roll diameter3.5 inches (88.9 mm)
Paper thickness at 25°C
Two-ply0.006 - 0.007 inch (0.15 - 0.18 mm)
Three-ply0.009 - 0.0105 inch (0.23 - 0.27 mm)
Roll paper coreinside diameter, 7/16 inch
Typical roll footage
Two-ply110 feet (3352.8 cm)
Three-ply70 feet (2133.6 cm)
Paper low indicatorstriping starts at approximately 8 - 10 feet (243.8 - 300.5 cm) from end of roll
Receipt paper lowThe paper level is sensed by software with an adjustable end of roll monitor
that prevents printing.
3.4.4 Inserted Slips and Forms
Paper width2.50 - 9.0 inches (63.5 - 228.6 mm)
Length3.375 - 11.0 inches (85.7 - 279.4 mm)
Paper thicknessa.one sheet: 0.0035 - 0.016 inches (0.089 - 0.41 mm) at 25°C
b.combination of copy paper and carbon copy paper:
4 sheets maximum (one original and three copies)
c.maximum form thickness: 0.016 inches (0.41 mm) at 25°C
12/16/99Rev MPage 9
General SpecificationsPcOS Series 90PLUSProgrammer's Guide
3.375 - 11.00”
(85.7 - 279.4 mm)
2.50 - 9.00”
(63.5 - 228.6 mm)
Figure 4 Slip form size
3.5Slip Sensor
Once an inserted form has been properly aligned and sensed by the slip sensor, it is positioned at the top of the
form by the slip load command.
Figure 5 Slip paper print
The position of the first line of print can be adjusted by ± 0.050 inch (± 1.27 mm) during printer installation.
Page 10Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSGeneral Specifications
3.6 Printable Area
3.6.1 Receipt Printing
3.6.1.1 Receipt Printing without the Autocutter
Tear-off
0.70” (7.8 mm)
2.80” (71.1 mm)
3.25” (82.6 mm)
Figure 6 Receipt printable areaFigure 7 Receipt printable area
The paper tear-off is 0.7 inch (17.78 mm) above the last line of print. To place the last line printed
above the tear-off point, the paper should be fed 0.8 inch (20.32 mm). The paper can then be torn-off
from either the left or right side. The first line of the next print will be 0.7 inch (17.78 mm) from the
top of the form.
0.225” (5.7 mm)
2.40” (61.0 mm)
2.50” (63.5 mm)
Tear-off
0.70” (17.8 mm)
0.225” (5.7 mm)
The paper should not be reverse fed back into the printer. If a double-high line of print is the first line
of a receipt, it will be reverse fed 0.1 inch (2.54 mm). If any more paper is reverse fed, the paper will
become unloaded from the tear-off bar.
12/16/99Rev MPage 11
General SpecificationsPcOS Series 90PLUSProgrammer's Guide
3.6.1.2 Receipt Printing with the Autocutter
Tear-off
2.80” (71.1 mm)
3.25” (82.6 mm)
Figure 8 Receipt autocutter position
Cut-off
0.60” (15.2 mm)
0.90” (22.9 mm)
0.225” (5.7 mm)
The autocutter has a cut point and a tear-off point. The tear-off is used to separate the partial cut
cleanly from the next receipt.
The autocutter is positioned 0.9 inch (22.9 mm) from the top of the last line of print to the cut point.
The paper should be fed 1.0 inch (25.4 mm) after the last line is printed and before the cutter is
activated. After the cut, the paper automatically feeds 0.6 inch (15.2 mm) to allow the receipt cut
point to be at the tear-off point.
The first line of print is 1.5 inches (38.1 mm) from the cut. If the first line of the next receipt is to be
closer to the top of the receipt, the receipt can be reversed up to 0.4 inch (10.2 mm). The previous
receipt must, however, be removed before the reverse feed. If the receipt is not to be removed but is to
remain attached to the next receipt, the paper should not be reversed.
The paper should not be fed back into the printer more than 0.4 inch (10.2 mm). If a double-high line
of print is the first line of a receipt, it will be reverse fed 0.1 inch (2.54 mm). If any more paper is
reverse fed, the paper will become unloaded from the knife.
Page 12Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSGeneral Specifications
3.6.2 Validation Forms Printing
The Models 93PLUS and 94PLUS are both equipped with independent validation. The movement of the
validation form is under software or firmware control and allows the form to move either independent of
the receipt (or receipt/journal) or in sync with the receipt (or receipt/journal).
Lines per inchLines
918
8.517
816
613
Table 3 Validation lines
Lines per inchLines
911
8.510
810
67
Table 4 Ten line validation option
0.50” (12.7 mm)
2.50 - 4.25” (63.5 - 108.0 mm)
0.625”
(15.9 mm)
2.40”/2.80”
(61.0/71.1 mm)
6.00 - 10.00”
(152.4 - 254.0 mm)
Figure 9 Validation print with normal and narrow print zones
3.6.2.1Validation Forms Insertion
Form insertion is from the top or the left side of the printer. Automatic form location is under
software or firmware control. Character rotation under software control will allow check validation to
appear right-side up when the check is removed.
12/16/99Rev MPage 13
General SpecificationsPcOS Series 90PLUSProgrammer's Guide
3.6.2.2 Validation Forms Sensing
The printer has a sensor that is used to detect the presence of a validation form. This sensor may be
queried by an application to check on the presence of a form. It is located approximately 0.5 inch
(12.7 mm) below the print line and to the far right of the paper path.
3.6.3 Inserted Forms Printing
Top of form to top of print line0.06 inch (1.52 mm)
Minimum form length3.375 inches (85.7 mm)
Minimum form width2.5 inches (63.5 mm)
Bottom of form to bottom wire0.625 inch (15.9 mm)
0.50” (12.7 mm)
0.06”
(1.52 mm)
3.375 - 11.00”
(85.7 - 279.4 mm)
0.625” (15.9 mm)
2.40”/2.80”
(61.0/71.1 mm)
2.50 - 9.00”
(63.5 - 228.6 mm)
Figure 10 Inserted slip using normal and narrow print zone
Page 14Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSGeneral Specifications
Insertion Direction
0.50” (12.7 mm)
0.06”
(1.52 mm)
3.375 - 11.00”
(85.7 - 279.4 mm)
0.625” (15.9 mm)
2.40/2.80”
(61.0/71.1 mm)
2.50 - 9.00”
(63.5 mm - 228.6 mm)
Figure 11 Normal and narrow print zone rotated print
3.6.3.1Inserted Forms Guidelines
• Use forms with a paper roll loaded.
• Use forms that are flat and without curls, folds, warps, or wrinkles.
• Glue should not be on the bottom edge of the form.
• Use of multipart forms with thick middle plies will decrease copy visibility.
Glue Area
Glue Area
Glue Area
Recommended
Figure 12 Multipart forms
Not Recommended
Use Carefully
Glue Area
Use Carefully
12/16/99Rev MPage 15
General SpecificationsPcOS Series 90PLUSProgrammer's Guide
3.6.4 MICR Reader
The MICR reader is an option for the Series 90PLUS Printer. It is attached to the front of the printer and
allows a document having MICR data on it to be read and positioned for print.
The MICR reader recognizes the magnetic ink on the bottom of checks; it is not an optical reader. Any
nonmagnetic data will not be read. The Series 90PLUS MICR reader is based on a technique which uses a
magnetic read head to pick up a signal from a document containing magnetic ink which is passed beneath
the read head.
The Series 90PLUS MICR reader recognizes E13-B characters. It does not read CMC-7 characters. CMC7 characters are used in Latin America and Europe.
Page 16Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSControl Codes
4 Control Codes Overview
This programmer's guide is designed to help users of the Series 90PLUS slip printer develop applications. Series
90PLUS printers are specialized, point-of-sale printers that have several features not normally found on general
purpose printers. Because of these special features, Series 90PLUS printers have specialized control codes. This
guide documents all of the control codes with an emphasis on those codes that are unique to the Series 90PLUS
Printer.
All PcOS Series 90PLUS Printers have both a serial and parallel interfaces. Both interfaces provide the same
printer control3 and use the same codes.
4.1 Nomenclature
When describing control codes, there is often confusion as to whether the description is decimal, hexadecimal,
or ASCII. To minimize the confusion, this guide will use the following nomenclature when describing control
code sequences:
[ ]encloses a control character. This is a single, 8-bit value as defined in the standard ASCII
tables. The ASCII chart in Appendix A lists control codes. An example would be [ESC],
which would represent a 1BH or 27 decimal.
< >encloses an 8-bit value in decimal format. The value will be from 0 to 255. An example
would be <2>, which would represent 02H or 2 decimal.
<n>indicates a variable parameter. <n> can have a value from 0 to 255. The meaning of <n> is
described and defined in the description of the command.
<n1> <n2>indicates that there are two parameters, n1 and n2, where both can have values from 0 to 255.
<m1> <m2>is an Ithaca Peripherals’ Control Language (IPCL) parameter consisting of two digits where
m1 and m2 are ASCII characters from 0 to 9. The parameter will be combined to form a
value from 0 to 99. If m3 is included, the parameter will be combined to form a value from 0
to 999. If two values are specified, there must be two bytes added to the IPCL code. In other
words, if the command specifies <m1> <m2> and the desired value is 5, the value must be
specified as 05.
xrepresents all other ASCII characters in control strings. For example, [ESC] 1 would
represent 1BH followed by 31H.
The CFG90 configuration and demonstration program4 uses the same nomenclature. All print examples
shown in this guide are available for CFG90.
In many cases, applications require that control sequences be specified in hexadecimal or decimal codes. In
most cases, commands are specified in ASCII, hexadecimal, and decimal. There is an ASCII chart in
Appendix A that lists ASCII, hexadecimal, and decimal equivalents.
3
The serial and parallel, IEEE 1284 interfaces provide a few additional interface capabilities over the standard
parallel interface. Both serial and parallel, IEEE 1284 interfaces provide a bidirectional data path.
4
The CFG90 distribution disk is included in a jacket on the back cover. The program runs on IBM personal
computers and compatibles. For more information, see the CFG90/150 User’s Guide following this manual.
12/16/99Rev MPage 17
Control CodesPcOS Series 90PLUSProgrammer's Guide
4.1.1 Standard Emulation
The standard control codes for the Series 90PLUS Printer are extensions and subsets of the IBM
emulation provided on other PcOS products. In some cases, an application designed for a Series 50 Printer
with IBM code sets will function with a Series 90PLUS Printer. There are, however, significant
differences in the operation of the Series 90PLUS Printer that may impact existing applications.
4.1.2 EPOS Emulation
ESC/POS5 is referred to here as EPOS. The Series 90PLUS Printer supports an EPOS emulation with
extensions. The emulation is designed to allow the Series 90PLUS Printer to be used with Seiko Epson
printer applications. It is intended that the standard emulation be used for new applications. Not all
features of the Series 90PLUS Printer are supported by EPOS.
This guide will include the EPOS code equivalent for features of the Series 90PLUS Printer that are
supported by EPOS. When EPOS commands are significantly different from the standard emulation, an
independent EPOS description is provided.
4.1.3 IPCL Codes
Ithaca Printer Control Language (IPCL) codes are designed to control a printer without using control
characters, i.e., characters less than 20H. Only the standard emulation supports IPCL. Not all commands
are supported by IPCL codes. For the commands that are supported, the IPCL code is listed.
In rare cases, an IPCL code will interfere with the text that is to be printed. The IPCL translator can be
disabled with an [ESC] y <4> command.
4.2 Application Development
To aid in application development, there are several sections in this guide that are designed to help the
programmer understand the Series 90PLUS Printer. The first is a detailed description of each of the
commands. The second section is an explanation of how the printer works. It explains the internal print buffer,
the communication link, and how the host computer and printer interact. The third is a description on how to
use the CFG90 program to help develop applications.
4.3 Tables and Charts
Throughout this guide, there are charts and tables that list commands and features. In most cases, these charts
cross-reference the page that describes the command. Commands are grouped by function and can at times be
hard to find. To minimize the time it takes to find commands, there are two code summary charts in the
following section, one ordered by code and one by function.
5
ESC/POS is a registered trademark of the Seiko Epson Corporation.
Page 18Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Print/Paper Motion
5 Printer Control Codes
5.1 Print/Paper Motion
5.1.1 Low-level Paper Motion Control
FunctionCarriage return
ASCII[CR]
Hexadecimal0DH
Decimal<13>
IPCL&%CR
EPOS0DH
DescriptionThe [CR] command prints the contents of the print buffer (if any) and resets the
next character print position to the left margin. A line feed is not performed
unless autofeed was activated. The left margin is defined by the current print
station, the print rotation direction, and the left margin command.
NoteIn single line mode, the [CR] is used to terminate all lines. The printer will go
busy6 after the [CR] is received. The printer will not be ready to accept data
until the previous data is printed.
FunctionLine feed
ASCII[LF]
Hexadecimal0AH
Decimal<10>
IPCL&%LF
EPOS0AH
DescriptionThe [LF] command prints the contents of the buffer (if any) and advances the
paper one line at the current default line spacing. The next character print
position is not reset to the left margin unless auto-CR was active.
6
In one-line mode, the parallel-port busy signal will occur as a result of receiving the [CR].
In serial mode, the busy indication will be delayed until the [CR] is processed by the input software. Data sent to
the printer after the [CR] will not be lost unless the printer is power-cycled.
12/16/99Rev MPage 19
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Print/Paper Motion
5.1.2 Horizontal Motion Control
There are several commands that control the horizontal position of the characters. Many applications use
space control to position fields. However, the Series 90PLUS Printer has the ability to control character
position with horizontal tab stops. To move tabs, use the horizontal tab, [HT].
FunctionHorizontal tab
ASCII[HT]
Hexadecimal09H
Decimal<9>
IPCL&%HT
EPOS[HT]
DescriptionThe [HT] command inserts spaces in the print buffer up to the next tab stop.
The default tab locations are every eight spaces.
FunctionBack space
ASCII[BS]
Hexadecimal08H
Decimal<8>
IPCL&%BS
EPOS[BS]
DescriptionThe [BS] command prints the data in the print buffer and shifts the current
horizontal position by one character width to the left. If the current position is
at the left margin, the [BS] is ignored.
character columns specified by <n>. The end of the setting is specified by a
<0>. All previously set tabs will be cleared by the command. There is no
default restore procedure other than to respecify the tabs. The power up default
is every eight spaces, i.e., 9, 17, 25, and so forth.
Column sizes are in accordance with the current character pitch.
Setting tabs that are beyond the station width is possible. A [CR] will be
inserted if the tab is used. Printing will begin at the home position.
FunctionReset horizontal and vertical tab stops
ASCII[ESC] R
Hexadecimal1BH 52H
Decimal<27> <82>
IPCL&%HV
EPOSnone
DescriptionThe [ESC] R command resets horizontal and vertical tab stops to power up
configuration.
The power up horizontal default is every eight spaces, i.e., 9, 17, 25, and so
forth. The vertical default is every line.
Page 20Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Print/Paper Motion
FunctionSet justification
ASCII[ESC] a <n>
Hexadecimal1BH 61H <n>
Decimal<27><97><n>
IPCL&%JL, &%JC, &%JR
EPOS[ESC] a <n>
DescriptionThe [ESC] a <n> command sets the horizontal justification.
Where <n>0left justified&%JL
1center justified&%JC
2right justified&%JR
8left justified (no LF)none
9center justified (no LF)none
10right justified (no LF)none
The print format can be right, center, or left justified. The value of <n>
specifies the justification.
The power on default is left justified.
Notes1.Lines that have mixed size characters within them cannot be centered. For
example, a line with mixed single- and double-high text cannot be
centered. If a line of print is to be double-high and centered, the change to
single-high print must be done after the line terminator for the double-high
line.
For example, [ESC] W <3> Centered [ESC] W <0> [CR] will not print
correctly because the printer assumes that more data will follow the [ESC]
W <0>. The correct line would be: [ESC] W <3> Centered [CR] [ESC] W
<0>.
2.Justify commands do not effect graphics.
12/16/99Rev MPage 21
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Vertical Motion
5.2 Vertical Motion Control
FunctionFine line feed
ASCII[ESC] J <n>
Hexadecimal1BH 4AH <n>
Decimal<27> <74> <n>
IPCL&%FM <m1> <m2> <m3>
EPOS[ESC] J <n>
DescriptionThe [ESC] J <n> function command prints the contents of the buffer (if any) and
performs a line feed of n/216 inch. The command does not change the default line
spacing value. The next character print position is reset to the left margin if the
auto-CR mode is set.
EPOS NoteIn EPOS mode, the command performs line feeds in n/144-inch increments.
Example of Fine Line Feed[CR]
[ESC]J<54>
This line is 1/4" below the first.
[CR][LF]
This line is spaced at the default
of 1/8". [CR][LF]
Figure 13 Data sent to printer for a fine line feed
Figure 14 Example of fine line feed
FunctionSet variable line space n/216 inch
ASCII[ESC] 3 <n>
Hexadecimal1BH 33H <n>
Decimal<27><51><n>
IPCL&%SV <m1> <m2><m3>
EPOS[ESC] 3 <n>
DescriptionThe [ESC] 3 <n> command sets the default line spacing to n/216 inch. Set n = 1 to
255. The command takes effect immediately and sets the line feed spacing used by
[LF] to values other than 1/8 or 7/72 inch.
EPOS NoteLine spacing of n/144 inch is used.
FunctionSet line space 27/216 inch
ASCII[ESC] 0
Hexadecimal1BH 30H
Decimal<27><48>
IPCL&%ST
EPOS[ESC] 2
DescriptionThe [ESC] 0 command sets the default line spacing to 1/8 or 27/216 inch, which is
the standard eight lines per inch line spacing at initial power up.
EPOS NoteIn EPOS mode, the command sets 1/6-inch spacing or six lines per inch.
Page 22Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Vertical Motion
FunctionSet line space 21/216 or 7/72 inch
ASCII[ESC] 1
Hexadecimal1BH 31H
Decimal<27> <49>
IPCL&%SG
EPOSnone
DescriptionThe [ESC] 1 command sets the default line spacing to 21/216 inch. The line
spacing is for all-points-addressable (APA) graphic printing.
FunctionSet variable line space n/72 inch
ASCII[ESC] A <n>
Hexadecimal1BH 41H <n>
Decimal<27> <65> <n>
IPCLnone
EPOSnone
DescriptionThe [ESC] A <n> command sets the default line spacing to n/72. Set n = 1 to 85.
The line spacing does not take effect until enabled by the [ESC] 2 command. The
command is provided to maintain backward compatibility with the Series 50,
OKIDATA, IBM, and other printers. It can also be used to print on preprinted
forms.
FunctionEnable [ESC] A <n> line spacing
ASCII[ESC] 2
Hexadecimal1BH 32H
Decimal<27> <50>
IPCLnone
EPOSnone
DescriptionThe [ESC] 2 command enables [ESC] A <n> line spacing. [ESC] 2 is a companion
to the [ESC] A <n> command and puts the specified line spacing into effect. It will
remain in effect until another line spacing command is issued.
FunctionFeed <n> lines at current spacing
ASCII[ESC] d <n>
Hexadecimal1BH 64H <n>
Decimal<27> <100> <n>
IPCL&%FL <m1> <m2>
EPOS[ESC] d
DescriptionThe [ESC] d <n> command prints the contents of the buffer (if any) and performs
<n> line feeds at the current line spacing. The command does not change the
default line spacing value. The next character print position is reset to the left
margin.
NoteThe IPCL command will print from 00 to 99 lines. For example, if you wish to feed
12 lines, the IPCL command would be as follows: &%FL12.
12/16/99Rev MPage 23
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Vertical Motion
FunctionVertical tab
ASCII[VT]
Hexadecimal0BH
Decimal<11>
IPCL&%VT
EPOS(VT)
DescriptionThe printer sets a line counter to the top of the form whenever a station is selected.
By setting vertical tab stops, various form positions can be reached with a [VT]
operation.
specified by <n>. The end of the setting is specified by a <0>. All previously set
tabs will be cleared by the command. There can be a total of 64 tab stops specified
by the command; however, the power on default is a tab stop on every line.
FunctionReset horizontal and vertical tab stops
ASCII[ESC] R
Hexadecimal1BH 52H
Decimal<27> <82>
IPCL&%HV
EPOSnone
DescriptionThe [ESC] R command resets horizontal and vertical tab stops to power up
configuration. The power up horizontal default is every eight spaces, i.e., 9, 17, 25,
and so forth. The vertical default is every line.
FunctionForm feed
ASCII[FF]
Hexadecimal0CH
Decimal<12>
IPCL&%FF
EPOSnone
DescriptionThe [FF] command performs a form feed to the top of the form.
FunctionSet top of form
ASCII[ESC] 4
Hexadecimal1BH 34H
Decimal<27> <52>
IPCL&%TF
EPOS[ESC]L
DescriptionThe [ESC] 4 command sets the top of the form to the current position.
Page 24Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Vertical Motion
FunctionSet form length in lines
ASCII[ESC] C <n>
Hexadecimal1BH 43H <n>
Decimal<27> <67> <n>
IPCL&%SL<m1> <m2>
EPOS[ESC] C <n>
DescriptionThe [ESC] C <n> command sets the form length to <n> lines at the current line
spacing.
FunctionSet form length in inches
ASCII[ESC] C [NUL] <n>
Hexadecimal1BH 43H <0> <n>
Decimal<27> <67> <0> <n>
IPCL&%SI <m1> <m2>
EPOSnone
DescriptionThe [ESC] C [NUL] <n> command sets the form length to <n> inches.
FunctionBegin automatic line feed
ASCII[ESC] 5 <01>
Hexadecimal1BH 35H 01H
Decimal<27> <53> <01>
IPCL&%MA
EPOSnone
DescriptionThe [ESC] 5 <01> command sets automatic line feed mode which overrides the
configuration setting.
FunctionEnd automatic line feed
ASCII[ESC] 5 <0>
Hexadecimal1BH 35H 00H
Decimal<27> <53> <0>
IPCL&%CA
EPOSnone
DescriptionThe [ESC] 5 <0> command ends automatic line feed mode which overrides the
configuration setting.
FunctionReverse line feed
ASCII[ESC] ]
Hexadecimal1BH 5DH
Decimal<27> <93>
IPCL&%LR
EPOSnone
DescriptionThe [ESC] ] command performs a reverse line feed at the current line spacing.
Notes1.The receipt station can tolerate no more than 1/2 inch of reverse feed.
2.In validation mode, the form cannot be reversed past the first line of validation.
3.In slip mode, the form should not be reversed past the first line of the slip.
12/16/99Rev MPage 25
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
font). Enhanced, emphasized, subscript, superscript, and underline character
attributes are not available in HSD mode. To maintain optimum print speed, the
printer should be returned to HSD mode when enhanced print is not required.
&%QUUtility
&%QLNear letter quality (NLQ) Courier
&%QSNear letter quality (NLQ) Sans Serif
EPOS[ESC] x <n> and/or [ESC] ! <n>
DescriptionThe [ESC] I <n> command begins Utility or NLQ print mode.
Where n:0 HSD
1Utility
2NLQ Courier
3NLQ Sans Serif
4 - 7Will repeat 0 - 3
Utility mode is a one pass, 9 x 7 font. Utility print mode enables enhanced,
emphasized, subscript, superscript, and underline character attributes. Print speed is
reduced approximately 20 percent over the HSD mode.
NLQ Courier and Sans Serif print modes are two pass, 9 x 7 fonts. The print speed
is reduced and character features are added to the font to enhance the appearance.
EPOS Note[ESC] x < is identical to [ESC] I in normal mode. [ESC] ! <n> performs a similar
function; however, NLQ is not available.
Where n bits:76543210function
1-------underline
--1-----double-wide
---1----double-high
-------Xfont: 1 = Utility mode; 0 = HSD mode
Page 26Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Character Font
FunctionBegin 90°° or 270°° rotated font
ASCII[ESC] P <n>
Hexadecimal1BH 50H n
Decimal<27> <80> <n>
IPCL&%RI {n=2},&%RF{n=1},&%RN{n=0}
EPOS[ESC]V<n>
DescriptionThe [ESC] P <n> command sets the print font to a rotated 90° or 270° font.
Where n:0Normal
1Rotate 90°7 x 9 font
2Rotate 270°7 x 9 font
5Rotate 90°5 x 7 font
6Rotate 270°5 x 7 font
The rotated print font is a one pass, 7 x 9 or 5 x 7 font. Enhanced, emphasized,
subscript, superscript, and underline character attributes are not available in 90° or
270° rotated font mode. Double-wide and double-high are available. However,
because the font is rotated, double-wide will make the characters taller and doublehigh will make the characters wider.
The current pitch sets the spacing between lines. If eight cpi are set, the printer will
produce the equivalent of eight lines per inch rotated print.
Print pitches greater than 15 cpi are very small and difficult to read.
The rotated font mode prints faster than the formatted rotated print mode. However,
there is no formatting in 90° or 270° rotated font mode.
NoteLine graphic characters (<176> to <223>) print unrotated.
EPOS NoteTo turn off rotated print in EPOS mode, <n> must equal 0. If <n> equals one, the
pitch is set to 10 cpi. If <n> equals two, the cpi is set to eight.
FunctionEnd 90°° rotated font
ASCII[ESC] P <0>
Hexadecimal1BH 50H 0H
Decimal<27> <80> <0>
IPCL&%RN
EPOS[ESC] V <n>
DescriptionThe [ESC] P <0> command returns the print font to normal nonrotated mode.
NoteThe command leaves the printer in utility print mode.
12/16/99Rev MPage 27
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
International Character Sets
5.4 International Character Sets and Code Pages
The Series 90PLUS Printer supports 65 different international character sets. In IBM and EPOS printers, there
have historically been two ways of selecting a character set. The first mode substitutes international characters
in the upper 128 characters of the standard character set. The technique supports a few different countries. As
more and more countries were added, too many characters were being replaced, and it became a problem for
the application to match the characters displayed and the characters printed. To solve these problems, code
pages were developed. The printer and the display could use the same code page. The application would then
display and print the same characters. IBM and EPOS defined new commands to select code pages and left the
old commands in effect.
The Series 90PLUS Printer supports international character sets as well as code pages. However, both methods
are extended in the Series 90PLUS Models to allow the most flexibility for the application programmer. In
IBM mode, there are 19 character sets and 60 code pages. In EPOS, there are 57 character sets and 5 code
pages7.
The Series 90PLUS Printer allows the IBM code page selection command to select character sets as well as
normal IBM code pages. The EPOS character set select command has been extended to allow additional
character sets over and above the 11 defined by EPOS. The EPOS code page select command has not been
extended as there is no EPOS definition beyond the first six ID’s.
All characters in code pages as well as character sets are addressed as 0 to 255. (Characters below 32 must be
addressed with the [ESC] ^ <n> command.) Code pages may be changed at any time and are active for all
features including rotated print. To allow other code pages to be created by an application, a redefine character
set command is provided. The command allows individual character substitutions.
As discussed above, there are two commands for language selection in IBM mode. The first is [ESC] ! which
will select one of 19 international character sets. The command will not select all the possible sets and is
provided for compatibility with older programs. The second is [ESC] [ T which will select any of the 58 code
pages. In EPOS mode, the command [ESC] R has been expanded and will select any of the 59 international
character sets or code pages.
FunctionSelect International Character Set
ASCII[ESC] ! <n>
Hexadecimal1BH 21H
Decimal<27> <33>
IPCL&%CS<n>
EPOS[ESC] R <n>
DescriptionThe [ESC] ! <n> command selects international character set <n>. In standard
mode, the value of <n> is as follows.
7
Epson provides limited code page support through ID to code page translation. Only six translations are defined.
Page 28Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
International Character Sets
<n>Language<n>Language<n>Language
64-‘@’ASCII (Slashed zero)71-‘G’Norwegian78-‘N’Swedish IV
65-‘A’ASCII (Unslashed zero)72-‘H’Dutch79-‘O’Turkish
66-‘B’British73-‘I’Italian80-‘P’Swiss I
67-‘C’German74-‘J’French Canadian81-‘Q’Swiss II
68-‘D’French75-‘K’Spanish90-‘Z’Publisher
69-‘E’Swedish76-‘L’Swedish II
70-‘F’Danish77-‘M’Swedish III
German2Polska Mazovia22Windows Cyrillic52
British3ISO Latin 223Hungarian CWI54
Danish I4Serbo Croatic I24Kamenicky (MJK)55
Swedish I5Serbo Croatic II25ISO Latin 4 (8859/4)56
Italian6Multilingual26Turkey-85757
Spanish I7Norway27Roman-858
Japanese8Portugal28Hebrew NC (862)60
Norwegian9Turkey29Hebrew OC61
Danish II10Greek 43738Windows Hebrew62
Spanish II11Greek 92839KBL-Lithuanian63
Latin American12Greek 437 CYPRUS41Publisher64
French Canadian13ECMA-9442Ukrainian66
Dutch14Canada French43ISO Latin 6 (8859/10)67
Swedish II15Cyrillic I-85544Windows Baltic68
Swedish III16Cyrillic II-86645Cyrillic-Latvian69
Swedish IV17East Europe Latin
Turkish18Greek 86947Icelandic-86173
Swiss I19Windows East Europe49Baltic 77474
EpsonIDCountry Code/
Language Set
II-852
EpsonIDCountry Code/
Language Set
(Windows Turkey)
46Bulgarian72
Epson
ID
51
Table 6 EPOS language table identification
Note: there is a demonstration script distributed with the CFG90 program that will print a complete character
chart for IBM or EPOS modes. See the CFG90 Distribution Disk included in a jacket on the back cover.
12/16/99Rev MPage 29
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
International Character Sets
FunctionSelect character code page
ASCII[ESC] [ T <nh> <n1>
Hexadecimal1BH 5BH 54H <nh> <n1>
Decimal<27> <91> <84> <nh> <n1>
IPCL&%CP <m1> <m2> <m3> <m4>
EPOS[ESC] t <n>
DescriptionThe [ESC] [ T <nh> <n1> command selects the character code page, <nh> <n1>.
The Series 90PLUS Printer supports many code pages. The following code pages
are supported.
Code
Page
437USA1,1811H,0B5H1027Ukrainian4,34H,003H
774Baltic 7743,63H,006H1028Roman-84,44H,004H
850Multilingual3,823H,052H1029ISO Latin 6 (8859/10)4,54H,005H
852East Europe Latin II-
81Swiss II0,810H,051H1022Windows Cyrillic3,2543H,0FEH
90Publisher0,900H,05AH1024Hungarian CWI4,04H,000H
91Welsh0,910H,05BH1026ISO Latin 4 (8859/4)4,24H,002H
852
Decimal
<nh> <nl>
3,843H,054H1030Hebrew NC (862)4,64H,006H
Hex
<nh> <nl>
Code
Page
Country Code/
Language Set
Europe
Turkey)
Decimal
<nh> <nl>
3,2513H,0FBH
3,2533H,0FDH
<nh> <nl>
Hex
Table 7 Code page definition table
Note: The code page field is a 16-bit field that is equivalent to the code page number. For example, 1 * 256 +
181 = 437. For the IPCL command, the page is specified in ASCII as a four-byte field.
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
International Character Sets
FunctionPrint control character
ASCII[ESC] ^ <n>
Hexadecimal1BH 5EH <n>
Decimal<27> <94> <n>
IPCL&%CC <m1> <m2> <m3>
EPOS[ESC] ^ <n>
DescriptionThe [ESC] ^ <n> command allows characters from 0 to 31 codes to be printed.
During normal operation, characters from 0 to 31 are control characters. The
command turns off control code translation for the following character. <n> can be
from 0 to 255.
FunctionRedefine character set
ASCII[ESC] [ S <LL> <LH> <BC> <T1L> <T1H> <T2L> <T2H> <T3L> <T3H> … <TnL>
<TnH>
Hexadecimal1BH 5BH 53H …
Decimal<27> <91> <83>
IPCLnone
DescriptionThe command allows an application to replace or redefine the active character set
mapping in the printer.
Where <LL> <LH> defines the total length of the following data:
<LL> + 256 * <LH> = 1 + 2 * is the total number of characters to be replaced.
<BC> is the first character in the active map to be replaced.
<T1H> <T1L>8 is the internal address of the replacement character image.
The mapping of a print pattern to each character address is referred to as a code
page or character set. At any given time, the printer character set is comprised of
256 characters. Each character is addressed by an 8-bit value generally referred to
as a character code. For example if you want to print an ‘A,’ the character would be
addressed by sending a <65> decimal to the printer. There are 65 predefined code
pages or character maps that assign characters to a particular address built into the
printer. However, there are times when an application would like to redefine a
character or group of characters in a code page. To be able to redefine characters,
the Series 90PLUS Printer allows the map for any code page to be replaced. The
“Define Character Set” command allows any character or group of characters to be
replaced with any other printable character. There are over 500 printable master
characters defined in the printer.
For example, to redefine the character map for the 35th character and replace it
with internal master character 346, the “Redefine Character Set” command is used
as follows:
[ESC] [ S <3> <0> <35> <90> <1>
^^^^ ^^ ^^^^^^
| | +- 346th Character in the Master set
| | [(1*256) + 90]
| +------- 35th Character
+----------- 3 Bytes to follow [(0*256) + 3]
The new map will remain until the printer is power cycled or the character set is
redefined. The code page and character set commands completely redefine the table.
NoteThe OCR character set disable command ([ESC] y <12>) will also restore the
character set to the original definition.
8
The internal character map is provided in the Master Character Set Definitions Guide (PN: 100-9785).
12/16/99Rev MPage 31
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
International Character Sets
FunctionOCR character enable
ASCII[ESC] y <11>
Hexadecimal1BH 79H 0BH
Decimal<27> <121> <11>
IPCL&%YX011
EPOS[ESC] y <11>
DescriptionThe [ESC] y <11> command replaces 30 characters in the currently selected
character set with OCR-MA2 characters. OCR characters are only available in
utility mode; utility mode is automatically selected when OCR is enabled.
NoteDo not switch out of utility mode until after the OCR characters are disabled. The
other fonts do not contain these characters and will not print correctly.
CharacterNameLocation
Hex,
Dec
0
1
2
3
4
5
6
7
8
9
Α
Χ
∆
Μ
Ν
Table 9 OCR-MA2
Number 030H,480
Number 131H,491
Number 232H,502
Number 333H,513
Number 434H,524
Number 535H,535
Number 636H,546
Number 737H,557
Number 838H,568
Number 939H,579
Letter A41H,65A
Letter C43H,67C
Letter D44H,68D
Letter M4DH,77M
Letter N4EH,78N
ASCII
Equivalent
CharacterNameLocation
Hex,
Dec
Π
Ρ
Υ
Ξ
Ψ
ϒ
⇒
◊
+
−
.
/
∃
>
∀
Letter P50H,80P
Letter R52H,82R
Letter U55H,85U
Letter X58H,88X
Letter Y59H,89Y
Symbol Hook7EH,126~
Symbol Chair60H,96`
Symbol Fork5FH,95_
Plus Sign2BH,43+
Minus Sign2DH,45Period2EH,46.
Slant2FH,47/
Dollar Sign24H,36$
Greater Than Sign3EH,62>
Quotation Mark22H,34“
ASCII
Equivalent
The characters printed by the Series 90PLUS Printer follow the format defined in the ANSI X3.111-1986
Standard. They should be printed in 10 or 12 cpi. By enabling enhanced print, the characters will have
improved definition but will be printed at a slower speed.
FunctionOCR character disable
ASCII[ESC] y <12>
Hexadecimal1BH 79H 0CH
Decimal<27> <121> <12>
IPCL&%YX012
EPOS[ESC] y <12>
DescriptionThe [ESC] y <12> command returns the 30 OCR characters to the previously
selected character set. It does not restore the print mode.
NoteAny character definitions described by the redefine character set command are also
replaced by the command.
Page 32Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
International Character Sets
FunctionInsert Euro character
ASCII[ESC] [ C <n>
Hexadecimal1BH 5BH 43H <n>
Decimal<27> <91> <67>
IPCL&%EU
EPOSnone
DescriptionThe [ESC] [ C <n> command allows an application to replace any character in the
currently active character set with the Euro character. The character to be replaced
is defined by <n>. For example, if the currently active character set is CP 850
(multilingual) and the 0D5H character is to be the Euro character, “1BH 5BH 43H
0D5H” will replace the character at 0D5H with the Euro symbol.
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Character Print Control
5.5 Character Print Control
A number of character pitch and print mode operations are possible and a few are not. The following table lists
the operations that are possible in matrix form.
Some features switch to an alternate mode while active. For example, if line graphics are to be printed, the printer
always prints them in a two-pass utility font at the selected pitch. Some enhanced or emphasized print formats are
not available in 15 to 24 cpi.
Rotated 180° print fully supports all print features. Rotated 90° and 270° prints in 5 x 7 font at 72 dpi are
equivalent to a 12-cpi HSD font. Rotated print supports 10 cpi and 12 cpi by controlling the line spacing.
Page 34Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Character Pitch
5.6 Character Pitch
FunctionBegin 10 cpi character pitch
ASCII[DC2]
Hexadecimal12H
Decimal<18>
IPCL&%F3
EPOS[ESC] [SP] <n>
DescriptionThe [DC2] command sets ten characters per inch print pitch.
FunctionBegin 12 cpi character pitch
ASCII[ESC] :
Hexadecimal1BH 3AH
Decimal<27> <58>
IPCL&%F2
EPOS[ESC] [SP] <n>
DescriptionThe [ESC] : command sets 12 characters per inch print pitch.
FunctionBegin 17 cpi character pitch
ASCII[SI]
Hexadecimal0FH
Decimal<15>
IPCL&%F1
EPOS[ESC] [SP] <n>
DescriptionThe [SI] command sets 17 characters per inch print pitch.
FunctionBegin 24 cpi character pitch
ASCII[ESC] [SI]
Hexadecimal1BH 0FH
Decimal<27> <15>
IPCL&%F4
EPOS[ESC] [SP] <n>
DescriptionThe [ESC] [SI] command sets 24 characters per inch print pitch.
Figure 15 Examples of print at various character pitch
12/16/99Rev MPage 35
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Character Pitch
FunctionSet specified character pitch
ASCII[ESC] [ P <n>
Hexadecimal1BH 5BH 50H <n>
Decimal<27> <91> <80> <n>
IPCL&%F<n>
EPOS[ESC] [SP] <n>
DescriptionThe [ESC] [ P <n> command sets characters per inch print pitch to <n>.
FunctionSet intercharacter spacing
ModeGlobal
ASCII[ESC] V <n>
Hexadecimal1BH 56H <n>
Decimal<27> <86> <n>
IPCLnone
EPOS[ESC] [SP] <n>
DescriptionThe [ESC] V <n> command sets intercharacter spacing by adding white space
between characters. The value of <n> sets the spacing and ranges from 0 to 11. The
normal pitch set commands set the intervalue to 0. The amount of space depends on
the pitch that was set. The following table specifies the amount of white space for
each pitch setting.
PitchSpacingPitchSpacing
HSD, 8 cpi1/80 * nUtility/NLQ, 8 cpi1/150 * n
HSD, 10 cpi1/100 * nUtility/NLQ, 10 cpi1/120 * n
HSD, 12 cpi1/120 * nUtility/NLQ, 12 cpi1/144 * n
HSD, 15 cpi1/150 * nUtility/NLQ, 15 cpi1/180 * n
HSD, 17 cpi1/171 * nUtility/NLQ, 17 cpi1/205 * n
HSD, 20 cpi1/200 * nUtility/NLQ, 20 cpi1/240 * n
HSD, 24 cpi1/240 * nUtility/NLQ, 24 cpi1/288 * n
Table 12 Intercharacter spacing table
Page 36Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Character Attribute Commands
5.7 Character Attribute Commands
FunctionBegin one-line double-wide print
ASCII[SO]
Hexadecimal0EH
Decimal<14>
IPCL&%MW
EPOSnone
DescriptionThe [SO] command causes subsequent characters to be printed at twice the currently
selected character width. For example, 10 cpi becomes 5 cpi, 17 cpi becomes 8.5
cpi, and so forth. The command will remain in effect until:
1.A valid line terminator is received (CR, LF, or fine line feed);
2.The command is canceled; or
3.The maximum number of characters per line is reached, and the printer
performs an automatic print.
Example of one line double wide[CR][LF]
This is normal 12 CPI Print[CR][LF]
[SO]
Double Wide[CR][LF]
This is back to normal[CR][LF]
Figure 16 Data sent to printer for one-line
double-wide print
Figure 17 Example of one-line double-wide print
FunctionCancel one-line double-wide print
ASCII[DC4]
Hexadecimal14H
Decimal<20>
IPCL&%MN
EPOSnone
DescriptionThe [DC4] command cancels one-line double-wide mode set by the [SO] command
and allows single- and double-wide characters to be printed on the same line.
12/16/99Rev MPage 37
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Character Attribute Commands
FunctionMultiline, double-wide, and double-high print
ASCII[ESC] W <n>
Hexadecimal1BH 57H <n>
Decimal<27> <87> <n>
IPCL&%FD, &%FS, &%FH
IPCL NoteSingle-wide, double-high mode is not available in IPCL.
EPOS[ESC] ! <n>
DescriptionThe [ESC] W <n> command controls multiline, double-wide, and double-high
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Character Attribute Commands
12/16/99Rev MPage 39
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Character Attribute Commands
FunctionBegin underline
ASCII[ESC] - <1>
Hexadecimal1BH 2DH 01H
Decimal<27> <45> <1>
IPCL&%MU
EPOS[ESC] ! <n>
DescriptionThe [ESC] - <1> command begins underline print mode. All subsequent text and
leading spaces will be underlined. Trailing spaces are also underlined.
NoteUnderline is not available in HSD mode. See page 34 for available modes.
EPOS Note[ESC] ! <n> performs a similar function; however, NLQ mode is not available.
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Character Attribute Commands
FunctionBegin enhanced print
ASCII[ESC] G
Hexadecimal1BH 47H
Decimal<27> <71>
IPCL&%ME
EPOS[ESC] G <1>
DescriptionAll subsequent text will be printed in enhanced print mode (two pass with a vertical
offset). Enhanced printing provides a deeper resolution of each character and may
enhance multiple-part form printing.
FunctionEnd enhanced print mode
ASCII[ESC] H
Hexadecimal1BH 48H
Decimal<27> <72>
IPCL&%CE
EPOS[ESC] G <0>
DescriptionThe [ESC] H command cancels enhanced print mode and returns to the currently
selected font.
FunctionBegin emphasized print
ASCII[ESC] E
Hexadecimal1BH 45H
Decimal<27> <69>
IPCL&%MM
EPOS[ESC] E <1>
DescriptionThe [ESC] E command begins emphasized print mode (one-pass mode with
horizontal offset). The print is bolder than normal print.
FunctionEnd emphasized print
ASCII[ESC] F
Hexadecimal1BH 46H
Decimal<27> <70>
IPCL&%CM
EPOS[ESC] E <0>
DescriptionThe [ESC] F command cancels emphasized print mode.
FunctionSelect superscript
ASCII[ESC] S <0>
Hexadecimal1BH 53H 00H
Decimal<27> <83> <0>
IPCL&%SP
EPOSnone
DescriptionThe [ESC] S <0> command selects superscript. All following characters will be
printed half size on the upper half of the print line.
NoteThe superscript feature is not available in all print modes. See page 34 for available
modes.
12/16/99Rev MPage 41
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Character Attribute Commands
FunctionSelect subscript
ASCII[ESC] S <1>
Hexadecimal1BH 53H 01H
Decimal<27> <83> <1>
IPCL&%SB
EPOSnone
DescriptionThe [ESC] S <1> command selects subscript. All following characters will be
printed half size on the bottom half of the print line.
NoteThe subscript feature is not available in all print modes. See page 34 for available
modes.
FunctionEnd superscript or subscript
ASCII[ESC] T
Hexadecimal1BH 54H
Decimal<27> <84>
IPCL&%SE
EPOSnone
DescriptionThe [ESC] T command ends superscript or subscript.
FunctionBegin italics
ASCII[ESC] % G
Hexadecimal1BH 25H 47H
Decimal<27> <37> <71>
IPCL&%MI
EPOS[ESC] 4
DescriptionThe [ESC] % G command begins italic print mode.
NoteItalics are not available in all print modes. See page 34 for available modes.
Figure 18 Example of underline, enhanced, emphasized, superscript, and subscript print
Page 42Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Print Rotation Commands
5.8 Print Rotation Commands
To provide printing flexibility on preprinted and various size forms, rotated print capability is available in slip
and receipt mode. Rotated print mode will adjust the print in any of three 90° orientations. In 90° and 270°
rotated mode, the print data is first buffered by the printer, processed (rotated), and then printed which causes
the print process to be delayed slightly as it takes some time to process the data before it is printed. In 180°
mode, the print is simply inverted and mirrored.
Because the rotated 90° and 270° print buffers are limited to 2240 characters, the amount of rotated print is
also limited. The printer can support a limit of 28 lines of rotated print. Therefore, the maximum line length is
80 characters. The technique used by the Series 90PLUS Printer is to receive all the print to be rotated and
convert it into graphics, which requires buffer space for all possible characters in each print line. Each line has
a fixed length buffer regardless of how much data is actually sent to the printer. The printer will fill the buffer
for each line to the maximum size. As a result, a short line of two characters will take as much buffer space as
a long line.
To make the most efficient use of buffer space, the line length is predefined. The default line length is 80
characters, which leaves room for 28 lines. To allow longer lines to be printed, the line length can be changed;
however, no more than 28 lines and 128 characters per line are allowed. For example, if the line length is
expanded to 128, there is buffer space for 2240/128 or 17 lines.
Specifying the line length is also useful to determine where data is printed on forms. In rotated 90° and 270°
mode, the print field can be extended to print the complete line length specified. Extending the line length is
useful for printing forms such as checks where the form is fixed but the data can change. This mode is called
line formatted mode. In line formatted mode, the line length is set not by the longest line entered but by the
maximum line length. (Line lengths less than 80 will not print more than 28 lines, only the format will be
affected).
A line spacing table controls the spacing between lines. The table is defined by the rotated print line spacing
([ESC] u ...) command or by inserting [LF] or [ESC] J <n> commands in the rotated data. The [ESC] u
command specifies the number of dots to be added between each printed line. Each line has an entry in the
table. There is room for 28 lines in the table. The minimum spacing (and default) is one dot or 1/80 inch
between lines, which results in a total of ten dots in a line or 10/80 inch (8 lines per inch).
There are two rotated fonts in the printer, 5 x 7 and 7 x 9. If the character cell is 7 x 9 with one dot of white
space9 or the total cell size is 7 x 10, the cell is printed at 80 dots per inch. If three dots are added, there will
be four dots total, and the cell will be 7 x 13. The following table specifies lines per inch for various numbers
of inserted dots.
Number of dots added
Spacing specified
Cell size
Line spacing (inch)
Number lines per inch
Line graphic characters are 7 x 10 which allow touching characters as a default.
12/16/99Rev MPage 43
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Print Rotation Commands
If the character cell is 5 x 7 with one dot of white space10 or the total cell size is 5 x 8, the cell is also printed
at 80 dots per inch. If three dots are to be added, there will be four dots total, and the cell will be 5 x 11. The
following table specifies lines per inch for various numbers of inserted dots.
Number of dots added
Spacing specified
Cell size
Line spacing (inch)
Number lines per inch
If a [LF] is used to specify the line spacing, it overrides the default table and sets spacing to 1 dot for 8 lines
per inch. If [ESC] J <n> is used, <n> specifies the spacing in n/216 (including the one dot white space). Note:
n/216 will be rounded to the nearest n/80, and the finest resolution allowed will be 1/80 inch.
In rotated 90° or 270° mode, the print is done in all-points-addressable (APA) graphics. The intercharacter
spacing is adjusted with the normal line spacing commands. The [ESC] 3 <n> command is the most effective
command for adjusting intercharacter spacing. Line spacing much less than 12 cpi will force the characters to
overlap. (Spacing of 12 cpi is obtained with an [ESC] 3 <18>).
When 90° or 270° rotation is selected, only normal text can be printed. Underline, enhanced, emphasized, and
other attributes will not function. See the chart on page 34 for a list of available features.
In 180° rotation mode, all spacing commands are effective. The mode of operation simply inverts and mirrors
the print operation. All line spacing and print features are available. It should be noted that the feed direction
is not effected by any of the rotate commands.
10
Line graphics characters are 5 x 8 or 7 x 10 which allow touching characters as a default.
Page 44Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Print Rotation Commands
FunctionBegin rotated print
ASCII[ESC] r <X>
Hexadecimal1BH 72H 0XH
Decimal<27> <114> <X>
IPCL&%RX
EPOS[ESC] T <3>
DescriptionThe command starts rotated print mode where X defines the mode as follows:
Where X = n bits:76543210function
----xx00end rotated print
----xx01rotate 90°
----0010rotate 180°
----xx11rotate 270°
----x1xxuse line formatting
----0xxxuse 7 x 9 font
----1xxxuse 5 x 7 font
If X = 1 or 9, rotate the print mode by 90°.
Print data is normally entered from left to right, top to bottom. When an end
rotated print ([ESC] r <0>) command is received, the printer formats and prints
the data.
If X = 5 or 13, rotate the print mode by 90° with formatting.
The command differs from the [ESC] r <1> command in that the line length is
determined not by the longest line entered, but by the line length set by the
[ESC] s command. If input extends past the end of a line, it will line wrap.
If X = 3 or 11, rotate the print mode by 270°.
The print will be rotated 270° according to the currently stored format
parameters.
If X = 5 or 13, rotate the print mode by 270° with formatting.
The print will be rotated 270° according to the currently stored format
parameters. The command differs from the [ESC] r <3> command by spacing
out the lines to the line length specified by the [ESC] s command. If input
extends past the end of a line, it will line wrap.
If X = 2, rotate the print mode by 180°.
All subsequent lines will be rotated 180° and positioned at the opposite margin.
All normal fonts and modes are available in 180° rotation mode. The format
and font bits are ignored by the command. The command will remain in effect
until rotation is canceled with an end rotated print ([ESC] r <0>) command, or
a station select command is issued.
NoteThe last line of print must be terminated with a line terminator before the end
rotated command is issued. Any characters in the print buffer that have not been
printed will not be printed. They will be printed unrotated when a line terminator is
received.
EPOS NoteThe Series 90PLUS Printer does not fully implement EPOS page mode. The [ESC]
T <n> command functions identically to the normal mode [ESC] r <n> except the
definition of <n> is different.
12/16/99Rev MPage 45
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Print Rotation Commands
Rotated Print Summary
FunctionBegin 90°° rotated print with 7 x 9 font
ASCII[ESC] r <1>
Hexadecimal1BH 72H 01H
Decimal<27> <114> <1>
IPCL&%R1
FunctionBegin 90°° rotated print with line formatting and 7 x 9 font
ASCII[ESC] r <5>
Hexadecimal1BH 72H 05H
Decimal<27> <114> <5>
IPCL&%R5
FunctionBegin 270°° rotated print with 7 x 9 font
ASCII[ESC] r <3>
Hexadecimal1BH 72H 03H
Decimal<27> <114> <3>
IPCL&%R3
FunctionBegin 270°° rotated print with line formatting and 7 x 9 font
ASCII[ESC] r <7>
Hexadecimal1BH 72H 07H
Decimal<27> <114> <7>
IPCL&%R7
EPOS[ESC] T <1>
FunctionBegin 90°° rotated print with 5 x 7 font
ASCII[ESC] r <9>
Hexadecimal1BH 72H 09H
Decimal<27> <114> <9>
IPCL&%R9
FunctionBegin 90°° rotated print with line formatting and 5 x 7 font
ASCII[ESC] r <13>
Hexadecimal1BH 72H 0DH
Decimal<27> <114> <13>
IPCL&%R4
FunctionBegin 270°° rotated print with 5 x 7 font
ASCII[ESC] r <11>
Hexadecimal1BH 72H 0BH
Decimal<27> <114> <11>
IPCL&%R8
FunctionBegin 270°° rotated print with line formatting and 5 x 7 font
ASCII[ESC] r <15>
Hexadecimal1BH 72H 0FH
Decimal<27> <114> <15>
IPCL&%R6
EPOS[ESC] T <1>
Page 46Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
FunctionEnd rotated print
ASCII[ESC] r <0>
Hexadecimal1BH 72H 00H
Decimal<27> <114> <0>
IPCL&%R0
EPOS[ESC] { <0>
DescriptionIn 90° or 270° mode, the command prints the contents of the rotated print
buffer and returns to normal print orientation. In 180° mode, the printer returns
to normal mode, and the characters in the print buffer that have not been
printed will not be printed.
FunctionSet rotated print line length
ASCII[ESC] s <n>
Hexadecimal1BH 73H <n>
Decimal<27> <115> <n>
IPCL&%RL <m1> <m2> <m3>
EPOSnone
DescriptionThe [ESC] s <n> command sets the print line length in autoformat rotated print
mode. The maximum number of characters is 128 per line. The power on
default line length is 80 characters. The number of available print lines is found
by dividing 1760 by the number of characters per line and rounding down to
the nearest whole number. The minimum number is 80 characters. Any value
less than 80 will not allow any additional print lines to be printed. Values
greater than 80 will limit the number of lines to less than 22.
12/16/99Rev MPage 47
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Print Rotation Commands
FunctionSet rotated print line spacing
ASCII[ESC] u <n1> <m1> <n2> <m2> ... <ni> <mi > <0>
Hexadecimal1BH 75H <n1> <m1> <n2> <m2> ... <ni> <mi> 00H
Decimal<27> <117> <n1> <m1> <n2> <m2> ... <ni> <mi> <0>
IPCLnone
EPOSnone
DescriptionThe command adjusts the line spacing for each rotated print line, where ni is
the line number and mi is the spacing in dot columns (1/80 inch) from the
previous line.
Edge of form
Left margin
n = 1, m
n=2, m
First line
Second line
Third line
Figure 19
For the first print line, the distance is calculated from the margin. An ni value
of 0 is used to terminate the command. Any unspecified spacing will be set to
one, which allows data to be accurately positioned on an inserted form. These
values will be used as a template for all subsequently rotated print. On power
up, all spacing is preset to 1/80 inch (n = 1, eight lines per inch) for all lines.
The command is only effective in 90° and 270° rotation modes. The command
remains in effect until a new table is received or until the printer is power
cycled. An [ESC] u <0> will have the effect of setting all lines to 1. The table
can be overridden by [LF] or [ESC] J <n> commands in the rotated print data.
The value of m can be from 1 to 127; n can be from 1 to 22.
Table 13 on page 43 specifies the line spacing for the command.
Page 48Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Graphic Mode
5.9 Graphic Mode
The Series 90PLUS Printer conforms to the full definition of IBM all-points-addressable (APA) graphic
commands. The printer will only print graphics that are 2.8 inches wide (2.4 inches with the narrow print
zone) which can make it difficult to use off-the-shelf graphic generation programs.
If the Series 90PLUS Printer is used with programs that convert text to graphics, the printer will be slower
than if the printer is sent ASCII text. The Series 90PLUS Printer is supported by a Windows’ print driver that
will allow applications to select fonts that are supported by the printer.
The Series 90PLUS Printer is not designed to print large quantities of graphical data. If the printer is asked to
print an excessive amount of black, it will break down the job into multiple steps. This protects the printer but
slows the performance. The printer should not be requested to print a white on black image.
5.9.1 Standard APA Graphics
FunctionPrint single-density graphics (60 h x 72 v dpi)
ASCII[ESC] K <n>1 <n>
Hexadecimal1BH 4BH <n>1 <n>
Decimal<27> <75> <n>1 <n>
IPCLnone
DescriptionThe [ESC] K <n>1 <n>
2
2
2
2
command prints n1 + 256 * n2 bytes of single-density
graphics (60 dpi).
FunctionPrint half-speed, double-density graphics (120 h x 72 v dpi)
ASCII[ESC] L <n>1 <n>
Hexadecimal1BH 4CH <n>1 <n>
Decimal<27> <76> <n>1 <n>
2
2
2
IPCLnone
DescriptionThe [ESC] L <n>1 <n>2 command prints n1 + 256 * n2 bytes of double-density
graphics (120 dpi) at half speed, allowing full and half dots to be printed.
FunctionPrint full-speed, double-density graphics (120 h x 72 v dpi)
ASCII[ESC] Y <n>1 <n>
Hexadecimal1BH 59H <n>1 <n>
Decimal<27> <89> <n>1 <n>
2
2
2
IPCLnone
DescriptionThe [ESC] Y <n>1 <n>2 command prints n1 + 256 * n2 bytes of double-density
graphics (120 dpi) at full speed with no consecutive dots. (Full-speed, doubledensity graphic mode is generally used to print 120 h x 144 v dpi resolutions in
two passes).
12/16/99Rev MPage 49
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Graphic Mode
FunctionPrint quad-density graphics (240 h x 72 v dpi)
ASCII[ESC] Z <n>1 <n>
Hexadecimal1BH 5AH <n>1 <n>
Decimal<27> <90> <n>1 <n>
2
2
2
IPCLnone
DescriptionThe [ESC] Z <n>1 <n>2 command prints n1 + 256 * n2 bytes of quad-density
graphics (240 dpi) at half speed with no consecutive dots. (Quad-density
graphic mode is generally used to print 240 h x 144 v dpi resolutions in two
passes).
Page 50Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Graphic Mode
5.9.2 Extended APA Graphics
FunctionPrint graphics in mode <m> (60 h/120 h/240 h x 72 v dpi)
ASCII[ESC] * <m> <n>1 <n>
Hexadecimal1BH 2AH <m> <n>1 <n>
Decimal<27> <42> <m> <n>1 <n>
2
2
2
IPCLnone
DescriptionThe [ESC] * <m> <n>1 <n>2 command selects one of the three graphic modes
listed above as specified by <m>.
Where <m>:060 dpifull speed8-bit slices
<n>. Possible values for <m> are K, L, Y, or Z. Resolutions, <n>, are 0 to 7 as
follows:
Where <m>:060 dpifull speed8-bit slicesdefault for K
1120 dpihalf speed8-bit slicesdefault for L
2120 dpifull speed8-bit slicesdefault for Y
3240 dpifull speed8-bit slicesdefault for Z
480 dpifull speed8-bit slices
572 dpifull speed8-bit slices
690 dpifull speed8-bit slices
7144 dpifull speed8-bit slices
FunctionBegin unidirectional print
ASCII[ESC] U <1>
Hexadecimal1BH 55H 01H
Decimal<27> <85> <1>
IPCL&%GU
EPOS[ESC] U <1>
DescriptionThe [ESC] U <1> command prints all data in unidirectional print mode to
NoteThe command should be canceled before normal text is printed. It will slow
12/16/99Rev MPage 51
improve line to line registration for graphical data.
printing time if it is not canceled.
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Graphic Mode
FunctionBegin bidirectional print
ASCII[ESC] U <0>
Hexadecimal1BH 55H 00H
Decimal<27> <85> <0>
IPCL&%GB
EPOS[ESC] U <0>
DescriptionThe [ESC] U <0> command prints all data in bidirectional, logic-seeking print
FunctionBegin unidirectional print
ASCII[ESC] U <1>
Hexadecimal1BH 55H 01H
Decimal<27> <85> <1>
DescriptionThe [ESC] U <1> command prints all data in unidirectional print mode to
improve line to line registration of graphic data.
NoteThe command should be canceled before normal text is printed. It will slow
printing time if it is not canceled.
FunctionBegin bidirectional print
ASCII[ESC] U <0>
Hexadecimal1BH 55H 00H
Decimal<27> <85> <0>
DescriptionThe [ESC] U <0> command prints all data in bidirectional, logic-seeking print
mode.
Page 52Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Graphic Mode
5.9.4 Graphic Save
The Series 90PLUS Printer contains a graphic-save buffer. The buffer is 2014 bytes long and can be saved
in the printer’s nonvolatile memory. The nonvolatile memory is read at power up and is available with a
single command. The purpose of the graphic-save feature is to allow a graphic logo to be stored in the
printer.
The buffer is designed to save a graphic image. However, any print information can be saved and then
printed. The print information in the buffer can be replaced at any time and then printed. It does not need
to be saved in the nonvolatile memory. It is feasible to use the buffer to create a duplicate receipt.
An additional feature of graphic save is the ability to define a start-up macro. When the feature is
activated, the graphic-save buffer is processed by the printer as part of its initialization. This allows the
initial default state of the printer to be changed. The initial state can be reestablished by running the
graphic-save buffer. In graphic-save mode, the buffer does not contain any printable data.
5.9.4.1 Programming Considerations
The graphic-save feature works by inserting the save buffer into the printer data stream when the
print graphic-save command is encountered.
Some care should be taken when forming the buffer because any configuration commands (like font
or pitch changes) will remain in effect after the buffer is complete.
If the buffer is saved to nonvolatile memory, the saving process takes about seven seconds. The
printer must be idle for the save to happen. The nonvolatile memory has a limited number of writecycle operations. As a result, the number of saves should be limited. The buffer should not be saved
on a transaction by transaction basis. Once a day should be the maximum.
Station select commands cannot be placed in the graphic-save buffer. The buffer does not allow
errors. If a station select command fails, it will not be correctly processed. For this reason, the
graphic-save buffer will not allow station select commands to be kept. If a station select command is
included in the data stream, the buffer definition will be terminated, and the buffer will be deleted.
Illegal commands will also terminate and delete the graphic-save buffer during the definition process.
The buffer is 2000 bytes long. All commands11 and print data are placed in the buffer, and both must
be included in the 2000-byte limit. The printer does not indicate when it is full. The application must
make sure that the buffer is not full. The printer will simply stop saving information in the buffer
after 2000 characters are received.
As the buffer is filled, the input data is printed normally. The effect of the graphic-save start
command is to begin saving the input data. The graphic-save stop command, discontinues saving data
and initializes internal pointers for the next print. The graphic-save stop-and-save command, halts
the save, writes the buffer to the nonvolatile memory, and initializes the internal pointers for the next
print. The graphic-save print command inserts the buffer into the print stream.
11
IPCL commands are converted by the printer into an equivalent [ESC] code and then placed in the save buffer.
The equivalent [ESC] code should be used to calculate the size of the save-buffer data.
12/16/99Rev MPage 53
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Graphic Mode
There is a configuration option that locks the graphic-save buffer and prevents a new graphic-save
operation from occurring until the lock is manually reset, which inhibits accidental deletion of the
graphic information.
FunctionGraphic-save print
ASCII[ESC] g <0>
Hexadecimal1BH 67H 00H
Decimal<27> <103> <0>
IPCL&%GP
EPOS[ESC] g <0>
DescriptionThe [ESC] g <0> command prints the graphic-save buffer.
FunctionStart graphic-save record
ASCII[ESC] g <1>
Hexadecimal1BH 67H 01H
Decimal<27> <103> <1>
IPCL&%GS
EPOSESC] g <1>
DescriptionThe [ESC] g <1> command clears the graphic-save buffer and starts
recording data. The next 2000 bytes (including characters and commands)
will be recorded.
FunctionStop graphic-save record
ASCII[ESC] g <2>
Hexadecimal1BH 67H 02H
Decimal<27> <103> <2>
IPCL&%GE
EPOS[ESC] g <2>
DescriptionThe [ESC] g <2> command stops recording graphic-save information. The
buffer is not saved into nonvolatile memory.
FunctionStop graphic-save record and save
ASCII[ESC] g <3>
Hexadecimal1BH 67H 03H
Decimal<27> <103> <3>
IPCL&%GW
EPOS[ESC] g <3>
DescriptionThe [ESC] g <3> command stops recording graphic-save information. The
buffer is saved into the nonvolatile memory.
NoteThe printer will remain busy for about seven seconds after the command to
erase and resave the graphic-save buffer into the nonvolatile memory.
Page 54Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Graphic Mode
FunctionStop graphic-save record and save as a start-up macro
ASCII[ESC] g <7>
Hexadecimal1BH 67H 07H
Decimal<27> <103> <7>
IPCLnone
EPOS[ESC] g <7>
DescriptionThe [ESC] g <7> command stops recording graphic-save information and
flags it as a start-up macro. The buffer is saved into nonvolatile memory.
NoteThe printer will remain busy for about seven seconds after the command to
erase and resave the graphic-save buffer into the nonvolatile memory. All
future power cycles will automatically run the macro.
Redefining the macro with [ESC] g <3> will remove the start-up flag.
12/16/99Rev MPage 55
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Bar Codes
5.10 Bar codes
The Series 90PLUS Printer has the ability to print bar codes. The printer will print one of five formats,
Interleaved 2 of 5, Code 39, Code 128, UPC A, and EAN-13. The host does not need to form the graphic
image for these bar codes. The host need only send the printer the information to be bar coded, and a graphic
will be generated. Bar codes can be printed in a high resolution, normal mode or a fast, high speed mode. The
normal mode is more readable than the high speed mode. (See the [ESC] [EM] B command on the next page
for setting the bar code height and print speed).
FunctionPrint bar code
ASCII[ESC] b <n>{information}[ETX]
Hexadecimal1BH 62H <n>... 03H
Decimal<27> <98> <n> ... <3>
IPCL&%25 ... [CR]Interleaved 2 of 5
Interleaved 2 of 5is a high density, self-checking, continuous, numeric bar code. It is mainly used
where fixed length numeric fields are required. The data field must be an even
number of characters. If an odd data field is sent to the Series 90PLUS Printer, it
will be zero padded. Due to space limitations, only 20 characters can be printed.
Note: Interleaved 2 of 5 does not read well in high speed mode.
Code 39is an alphanumeric bar code. It is a discrete, self-checking, variable length code.
The printer prints the complete data field. Due to space limitations, only ten
characters can be printed. If illegal characters are passed to the printer, they are
converted to legal codes, for example, a → A.
Code 128is also an alphanumeric bar code. It is a high density, variable length, continuous
code that employs multiple element widths. Code 128 has three possible start codes.
The start code defines the set as Code A, B, or C. The first character in the data
field defines the code set, start Code A = <135>, Code B = <136>, and Code C =
<137>. The printer prints the complete data field. Due to space limitations, only ten
characters can be printed. A check digit is generated by the printer.
Page 56Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Bar Codes
Code 128 NoteWith Code 128, the ‘A’ space is defined as <0>. This makes programming difficult
and causes control character conflicts for the printer. To help solve these problems
in Code 128, the Series 90PLUS Printer subtracts 32 from all characters that are to
be included in the bar code. In the Code 128 definition, an ‘A’ is <33>, however,
the printer will convert an ASCII ‘A’ (<65>) to a <33> internally. This forces Code
128C and the start codes off by 32.
UPC Ais a fixed length, numeric, continuous code that employs four element widths. The
printer supports Universal Product Code (UPC) Versions A and E, EAN-8, and
EAN-13. Version A encodes 11 digits. Typically, the UPC A format starts with a
number system digit, five-digit manufacturer’s code, five-digit product code, and a
check digit. The printer makes no assumptions about any of the codes except the
check digit. The printer will print an UPC bar code with the 11 digits sent to it and
generate the check digit. If fewer than 11 digits are sent, the remaining digits will
be zeroes. The printer will print an UPC that is about 130 percent the size of the
UPC nominal standard, which provides optimal readability.
UPC Eis a zero suppression version of UPC. The printer requires that the first digit is zero
for number system zero. If it is not zero, the bar code is not printed. The printer
does the compression based on the compression rules for UPC E. The printer will
print a UPC bar code based on the 11 digits sent to it and generate the check digit.
If fewer than 11 digits are sent, the remaining digits will be zeroes. The printer will
print an UPC that is about 130 percent the size of the UPC nominal standard which
provides optimal readability.
EAN-13is a fixed length, numeric, continuous code that employs four element widths. The
printer supports EAN-13, which is a superset of UPC that encodes 12 digits.
Typically, the format starts with a number set digit, which defines how the next six
digits are encoded. The next five digits have fixed encoding. The last is a check
digit. The printer will print an EAN-13 bar code with the 12 digits sent to it and
generate the check digit. If fewer than 12 digits are sent, the remaining digits will
be zero. The printer will print an EAN-13 bar code that is about 130 percent the
size of the nominal standard, which provides optimal readability.
EAN-8is a fixed length, numeric, continuous code that employs four element widths. The
printer supports EAN-8, which is a superset of UPC that encodes seven digits. The
printer will print an EAN-8 bar code with the seven digits sent to it and generate
the check digit. If fewer than seven digits are sent, the remaining digits will be zero.
The printer will print an EAN-8 bar code that is about 130 percent the size of the
nominal standard, which provides optimal readability.
Code 93is an alphanumeric, variable length bar code. The complete data field is printed by
the printer. Due to space limitations, only 12 characters can be printed.
NoteA [CR] may also be used in place of the [ETX] to end the bar code data field.
Only information that is usable in a particular bar code will be printed.
FunctionBar code height
ASCII[ESC] [EM] B <n>
Hexadecimal1BH 19H 42H <n>
Decimal<27> <25> <66> <n>
IPCL&%BH <m1> <m2>
EPOS[GS] h <n>
DescriptionThe [ESC] [EM] B <n> command sets the bar code height and speed, where <n> is
the number of print passes. Each pass is about 0.11 inch high. If n = <0>, the
printer returns to the default values of four passes for all except UPC which is
seven. Any value from zero to nine may be specified.
12/16/99Rev MPage 57
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Bar Codes
FunctionSet bar code justification and human readable number print modes
ASCII[ESC] [EM] J <n>
Hexadecimal1BH 19H 4AH <n>
Decimal<27> <25> <74> <n>
IPCL&%BJ <m1> <m2>
EPOSnone
The power on default is center justified with numbers on UPC bar codes.
Note: The command only effects bar code printing.
DescriptionThe [ESC] [EM] J <n> command selects the operation of the bar code justification
----xx--human readable
000----00--no numbers
404----01--numbers on UPC bar codes
808----10--numbers on non-UPC bar codes
1212----11--numbers on all bar codes
Page 58Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Station Control
5.11 Station Control
The Series 90PLUS Printer differs from a normal computer printer in that it is meant for retail point-of-sale
applications. Point-of-sale applications require that the printer has control sequences that are not normally
found in data processing and general-purpose printers. The control sequences fall into two categories: station
and miscellaneous.
Receipt-only printers do not have movable form compensation mechanisms. Only receipt operations are
allowed. Station select commands are not required for these printers.
Receipt/validation printers have a movable compensation mechanism, which allows a form to be inserted
between the print head and print platen. To allow the printer to operate the mechanism correctly, station select
and control commands are provided.
5.11.1 Receipt Operation
Normal receipt operation prints on the receipt tape. The receipt station can be equipped with journal takeup and/or a receipt cutter. Generally, the receipt station is idle.
FunctionSelect receipt
ASCII[ESC] f
Hexadecimal1BH 66H
Decimal<27> <102>
IPCL&%SR
EPOS[ESC] c 0 <n>
DescriptionThe [ESC] f command enters receipt mode, closes the form compensation, and
enables the receipt drive and take-up. All subsequent data will be printed on the
receipt.
NoteAll station select commands reset rotated print and print justification. Print is
set to 0° rotation with left justification. If rotated print or justification is to be
set, it must be set after the station select command.
FunctionActivate receipt cutter
ASCII[ESC] v
Hexadecimal1BH 76H
Decimal<27> <118>
IPCL&%FC Cut
EPOS[ESC] m or [ESC] i
DescriptionThe [ESC] v command cuts the receipt tape and is only active in receipt mode.
It will cut the receipt tape above the current print line.
NoteThe command is only effective on printers with a knife.
12/16/99Rev MPage 59
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Station Control
5.11.1.1 Receipt Paper-error Sensor
The paper-error sensor in the Series 90PLUS Printer monitors the diameter of the paper roll to
determine how much paper is left. The sensor will report paper low to the software when a 1.27-inch
roll diameter is reached. The amount of paper left on the roll depends on the type of paper being used.
The following table specifies the amount of paper on the roll when paper low is sensed.
Type of paperAmount of Paper Left
Single-ply
Double-ply
Triple-ply
Table 15 Amount of paper left when paper low is sensed
There are four ways that the sensor can operate. The first is hard-fault mode. In hard-fault mode
when paper low is detected, the printer goes off-line and stops. (To select this option, choose Mode 1
with 0 feet). The second is soft-fault mode. With soft-fault mode when the printer detects paper low,
an error is visually displayed to the operator. The printer will continue to print the number of lines
specified by the paper error command. (To select this option, choose Mode 2 with 1 to 15 feet). When
paper-low status is detected in the third method, the printer continues to print for a specified length of
paper and faults with no operator warning. (To select this option, choose Mode 1 with 1 to 15 feet). In
the fourth method, the paper-low signal is completely ignored, and the printer will print with no
paper12 or error fault. (To select this option, choose Mode 0 with 0 feet).
16 feet ± 8 feet (487 cm ± 244 cm)
8 feet ± 4 feet (244 cm ± 122 cm)
4 feet ± 2 feet (122 cm ± 61 cm)
When the printer generates a paper out fault, the printer stops printing. Because the paper out fault is
calculated, the printer may not be completely out of paper. By pushing the RESUME key, the printer
will add four inches to the paper out length. This can be done as long as the cover is not opened. It is
possible, however, to print past the end of the receipt roll by continually pushing the RESUME key.
12
This mode should not be selected unless the receipt station is not to be used. In other words, it must be a
validation only printer.
Note: in disabled mode, the [ENQ] command for receipt paper status will not operate. It will always return
“paper present.”
Page 60Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Station Control
FunctionSelect paper-error operation
ASCII[ESC] p <n>
Hexadecimal1BH 70H
Decimal<27> <112>
IPCL&%PE <m1> <m2>
EPOS[ESC] c 3 <n>
DescriptionThe [ESC] p <n> command selects the operation of the receipt paper-status
sensor.
Where n bits:nIPCL76543210
----xxxxpaper length to fault
0----0000immediate
1----00011 foot
15----111115 feet
yyyy----mode
000-150000----no fault generation
(Paper error is disabled.
Paper-error off is for
validation-only printers).
1616-310001----immediate fault after n feet
3232-470010----paper low warning, then
fault with visual warning
NoteThe default mode is specified in the printer configuration.
Typical values for Mode 2 are 8 feet (244 cm) with 1-ply, 4 feet (122 cm)
with 2-ply, and 2 feet (61 cm) with 3-ply paper.
FunctionDisable the paper out sensor
ASCII[ESC] 8
Hexadecimal1BH 38H
Decimal<27> <56>
IPCL&%PF
EPOSnone
DescriptionThe [ESC] 8 command is intended to temporarily disable the paper out
sensor. The printer will not stop printing or go off-line when it senses that
it is out of paper. The [ENQ] command will still return paper out status.
FunctionEnable the paper out sensor
ASCII[ESC] 9
Hexadecimal1BH 39H
Decimal<27> <57>
IPCL&%PO
EPOSnone
DescriptionThe [ESC] 9 command is intended to reverse the effect of the disable paper
out sensor command. If the printer is out of paper when this command is
issued, it will go off-line.
12/16/99Rev MPage 61
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Station Control
5.11.2 Validation and Slip Operation
There are two modes of form validation operations with the Series 90PLUS Printer.
5.11.2.1 Top Insertion Validation
With top insertion, the form is inserted from the top and extends out the left side and/or top of the
printer. It rests on a fixed form stop. Under software control, printing can begin from a minimum of
two lines to a maximum of 17 lines from the bottom of the form. A maximum of 17 lines at 42
characters can be printed on a form. In this manual, top insertion will be termed “validation mode.”
Depending on application requirements, the host system or the printer can control the form insertion
procedure. In most cases, the only difference will be whether the operator is prompted by the host
system or the printer.
5.11.2.1.1 Validation Controlled by the Host System
1.The host system indicates to the operator that a form is to be inserted for validation.
2.The form is inserted into the printer and is sensed by the application.
3.The host system closes the validation clamp and prints on the form. When printing is
complete, the host releases the form.
4.The host application prompts the operator to remove the form.
5.11.2.1.2 Validation Controlled by the Printer
1.The host system sends a validation transaction to the printer. The transaction starts with an
[ESC] [DC4] or an [ESC] j <n> command.
2.The printer opens the validation clamp, so the form can be inserted. The FORM light blinks,
and the READY light turns orange. The form is then inserted into the printer using one of
the following procedures.
a.In full insertion, right justified validation ([ESC] [DC4], [ESC] j <0>, or [ESC] j <3>),
the form must be fully inserted down and to the right. The green form guide on the right
side of the validation slot is used to justify the right side of the form. The form must then
be pushed all the way down until the orange READY light turns green.
b.In full insertion, not justified validation ([ESC] j <1>), the form must be fully inserted
down but need not be justified to the right. The position of the form from right to left is
up to the operator. The printer only looks at the bottom sensor to signal insertion. As
soon as the form is pushed all the way to the bottom of the validation slot, the orange
READY light turns green, and the form is clamped.
c.In right justified insertion ([ESC] j <2>), the form must be all the way to the right but
need not be all the way down in the validation slot. The vertical position of the form is
up to the operator; the printer only looks at the right sensor to clamp the form. As soon
as the form is justified to the right side of the validation slot, the orange READY light
turns green, and the form is clamped.
3.The printer will print the buffer transaction.
4.When printing is complete, the last command in the transaction should be a form-eject
([ESC] k) or open-clamp ([ESC] [DC1]) command. The printer releases the form, and the
operator removes it. If a second transaction is sent to the printer before the form is removed,
the printer will wait the eject-wait time for the form to be removed. If the form is not
removed, the printer will enter dejam mode and signal the operator to remove the form.
When the operator presses the RESUME key, the second transaction will start.
Page 62Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Station Control
5.11.2.2 Front Inserted Validation
The form is inserted from the front and extends out the left side and/or front of the printer. It does not
rest on a fixed stop. In front insertion mode, the form is loaded to the first line of print under
firmware control. Printing begins from the top of the form. The first line printed is under software
control from the application. In this manual, front insertion mode will be termed “slip mode.” All
Series 90PLUS validation printers have both validation and slip modes.
5.11.2.2.1 Slip Printing
In slip mode, the form to be printed on is inserted into the front of the printer. The printer always
controls slip mode.
1.The host system sends a slip transaction to the printer.
2.The printer opens the slip clamp, so a form can be inserted. The FORM light blinks and the
READY light turns orange.
3.The form is inserted into the front of the printer using the right slip guide to right justify the
form. The form is inserted until the orange READY light turns green.
4.When the orange light turns green, the form is properly positioned, and the printer clamps
the form automatically. Note: If the operator inserts the form too far, the printer may back it
up to correctly position it.
5.The printer automatically positions the form to the top line. When the form is positioned
correctly, the printer is ready. If the form is not positioned correctly, the printer generates an
error. The READY light flashes orange, and the FORM light flashes green. The printer will
enter dejam mode which will release the form. The operator should then remove the form
and press the RESUME button, which will restart the slip-load operation.
6.When the form is properly loaded, the printer will print the buffered transaction.
7.The last command in the slip transaction should be an eject-form ([ESC] k) command. The
eject-form command will feed the form up and out of the printer until it clears the lower feed
rollers. The printer will release the form, and the operator should remove it. If a second
transaction is sent to the printer before the form is removed, the printer will wait the ejectwait time for the form to be removed. If the form is not removed, the printer will enter dejam
mode and signal the operator to remove the form. When the operator presses the RESUME
key, the second transaction will start.
5.11.2.3 Mode Selection
To make controlling the Series 90PLUS Printer as easy as possible, the printer can be configured to
automatically reselect the receipt station after validation or slip operations. Autoreceipt select operates
differently depending on the mode of operation.
In validation mode with autoform sense, the printer can be configured to time out the operation and
return to receipt mode. The time out is set by the validation delay command. This time can be set
from 1/2 second to two minutes, or it can be turned off (no time out). The default for this delay is off.
The open-for-validation command without autoform sense will automatically return to receipt mode if
data is sent to the printer without a close-for-validation command. In this case, the form clamp will be
held open for at least two seconds. This time can be set from 1/2 second to two minutes, or it can be
turned off (no time out).
In slip mode, the command can be configured to time out and return to receipt mode if no form is
inserted. This time can be set from 1/2 second to two minutes, or it can be turned off (no time out).
The default is off.
12/16/99Rev MPage 63
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Station Control
After the eject form command, the printer will automatically reselect the receipt station if additional
print data is sent to the printer. This mode uses the same time delay as the open-for-validation
command without autoform sense. The delay specified must expire before the printer will close the
clamp and return to receipt mode. In this case, the form clamp will be held open for at least two
seconds. This time can be set from 1/2 second to two minutes, or it can be turned off (no time out).
5.11.3 Top Validation Operation
FunctionOpen for validation
ASCII[ESC] [DC1]
Hexadecimal1BH 11H
Decimal<27> <17>
IPCL&%VO
EPOS[ESC] c 0 <n>
DescriptionThe [ESC] [DC1] command opens the form compensation assembly for
validation. No automatic validation form sensing is performed. The application
must poll the printer for validation forms present and then issue a close
compensation command.
Notes1.The command can be set to time out.
2.If data is sent to the printer after the command but before a close-forvalidation command, the printer will return to receipt mode and print the
data.
FunctionClose for receipt/validation
ASCII[ESC] [DC3]
Hexadecimal1BH 13H
Decimal<27> <19>
IPCL&%VC
EPOS[ESC] c 0 <n>
DescriptionThe [ESC] [DC3] command closes the form compensation assembly and enters
validation mode if either the top form sensor or the slip-stop sensor recognize a
form. If no form is sensed, the printer will close the form compensation
assembly and enter receipt mode. If a form is sensed, the printer will be in
validation mode until another mode is issued. After the validation operation is
complete, an eject form or open-for-validation command should be issued. The
printer will not count validation lines or sense the end of the form. The
application should take care to not print past the end of the form. There are two
inches of validation space. The receipt mode select command can be issued at
the end of the validation operation. However, the clamp will not be opened, and
if a form is sensed, the printer will enter dejam mode.
NoteAll station select commands reset rotated print and print justification. Print is
set to 0° rotation with left justification. If rotated print or justification is to be
set, it must be set after the station select command.
Page 64Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Station Control
FunctionSelect validation operation
ASCII[ESC] [DC4]
Hexadecimal1BH 14H
Decimal<27> <20>
IPCL&%VS
EPOS[ESC] c 0 <n>
or ASCII[ESC] j <n>
Hexadecimal1BH 6AH <n>
Decimal<27> <106> <n>
IPCL for <n> = 1&%VB
IPCL for <n> = 2&%VR
IPCL for <n> = 3&%VS
EPOS[ESC] c 0 <n>
DescriptionThese commands open the form compensation assembly for validation. When
the form is sensed, the printer automatically clamps it. Data sent to the printer
after the select validation mode command will be printed in validation mode.
The eject form command should be used to release the validation form at the
end of the transaction. The [ESC] [DC4] command requires that the form be
inserted to the right and completely down in the printer to be clamped. The
[ESC] j <n> command allows the positioning of the form to be selected.
If <n> = 1,the form may be placed anywhere in the print area; it need not be all the way to
the right. It must, however, be completely down in the printer.
If <n> = 2,the form must be placed all the way to the right in the print area; it need not be
all the way down. The form will be clamped after the right sensor detects it.
The form must be manually positioned to the print line.
If <n> = 0 or 3,the form must be placed all the way down and to the right in the print area. The
form will be clamped after both sensors detect it. This command is the same as
[ESC] [DC4].
Notes1.All station select commands reset rotated print and print justification. Print
is set to 0° rotation with left justification. If rotated print or justification is
to be set, it must be set after the station select command.
2.Any data that is sent to the printer after an eject command is printed on the
receipt.
3.The command can be set to time out.
4.See validation control for additional control commands.
5.11.4 Front Slip Operation
FunctionSelect front slip mode
ASCII[ESC] i
Hexadecimal1BH 69H
Decimal<27> <105>
IPCL&%VF
EPOS[ESC] c 0 <n>
DescriptionThe [ESC] i command operates front-slip mode and takes several steps to
12/16/99Rev MPage 65
complete.
1.The front slip throat is opened, and the printer waits for a slip to be
inserted.
2.When a slip is sensed, it is clamped. The slip is then fed up to the form
position sensor. The sensor is located close to the top feed rollers and to the
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Station Control
right side of the printer. The sensor location ensures that the top of the
form is accurately positioned and the form is not skewed. The operator
should release the form as soon as it is clamped. (If the operator does not
release the form, it is possible the form will be mispositioned when the slip
drive transfers from the lower drive to the primary drive.)
3.If the form is not sensed by the form position sensor, an error is generated.
The slip is unclamped, and the operator should remove it. The operator can
restart the command with the RESUME key. If the form is in position, the
top edge is calibrated and clamped by the primary slip/validation drive.
4.The form is then positioned to the first line of print.
Notes1.All station select commands reset rotated print and print justification. Print
is set to 0° rotation with left justification. If rotated print or justification is
to be set, it must be set after the station select command.
2.The first line of print is adjustable in two ways: through the use of the
adjust slip position command or during initial configuration.
FunctionEject slip
ASCII[ESC] k
Hexadecimal1BH 6BH
Decimal<27> <107>
IPCL&%VE
EPOS[ESC] c 0 <n>
DescriptionThe [ESC] k command ejects the slip or validation form out of the printer and
opens the form clamp.
NoteIf the command is followed by another station select command and the form
has not been removed from the printer, the station select command will wait for
the eject wait time. If the form is removed before the eject wait period, the
printer will enter the selected station mode. If the form is not removed in time,
the printer will enter dejam mode. This delay is adjustable. See [ESC] [EM] W
on page 69.
FunctionRelease slip
ASCII[ESC] z
Hexadecimal1BH 7AH
Decimal<27> <122>
IPCL&%FR
EPOSnone
DescriptionThe [ESC] z command releases the slip by partially opening the form clamp.
NoteIf the command is followed by another station select command and the form
has not been removed from the printer, the station select command will wait for
the eject wait time. If the form is removed before the eject wait period, the
printer will enter the selected station mode. If the form is not removed in time,
the printer will enter dejam mode. This delay is adjustable. See [ESC] [EM] W
on page 69.
5.11.5 Validation and Slip Operation Control
Automatic validation operations can be adjusted for specific applications. The following commands adjust
print and form positions and delays used to sense forms.
Page 66Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Station Control
The Series 90PLUS Printer has several features that can be altered during operation. For example, the
time delay between when a form is sensed and when the form clamp is activated can be changed. This
allows the operation of the printer to be tailored to the application and form.
12/16/99Rev MPage 67
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Station Control
All feature control commands are extensions of the [ESC][EM] sequence. They are defined as follows.
FunctionValidation clamp delay
ASCII[ESC] [EM] C <n>
Hexadecimal1BH 19H 43H <n>
Decimal<27> <25> <67> <n>
IPCL&%ZC <m1> <m2>
EPOS[ESC] f
DescriptionThe [ESC] [EM] C <n> command sets slip clamp delay. Slip clamp delay is the
time between when the slip is sensed and the form is clamped. (Only the
smallest 4 bits are used.) The default is configurable.
Where <n>:00 ms
150 ms
2150 ms, and so on until
15750 ms
NoteThe command must be issued before the station select command. The
validation clamp delay is active for front and top validation form insertion.
Once issued, the value will be used until the printer is power cycled or the
command is reissued.
FunctionSet slip validation time out
ASCII[ESC] [EM] S <n>
Hexadecimal1BH 19H 53H <n>
Decimal<27> <25> <83> <n>
IPCL&%ZS <m1> <m2>
EPOS[ESC] f
DescriptionThe [ESC] [EM] S <n> command sets the time out after a front validation
command is issued and the printer returns to receipt mode.
Where <n> is the delay in one minute increments, the minimum time out is 1
minute, and the maximum is 15 minutes. If <n> = 0, the delay is set to no time
out (waits forever). The default is configurable.
FunctionSet validation time out
ASCII[ESC] [EM] V <n>
Hexadecimal1BH 19H 56H<n>
Decimal<27> <25> <86> <n>
IPCL&%ZV <m1> <m2>
EPOS[ESC] f
DescriptionThe [ESC] [EM] V <n> command sets the time out after a top validation
command with autosense is issued and the printer returns to receipt mode.
Where <n> is the delay in one minute increments, the minimum time out is 1
minute, and the maximum is 15 minutes. If <n> = 0, the delay is set to no time
out (waits forever). The default is configurable.
Page 68Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Station Control
FunctionSet clamp open time out
ASCII[ESC] [EM] U <n>
Hexadecimal1BH 19H 55H <n>
Decimal<27> <25> <85> <n>
IPCL&%ZU <m1> <m2>
EPOS[ESC] f
DescriptionThe [ESC] [EM] U <n> command sets the minimum time the clamp will
remain open after an eject form command. This time out must expire before the
clamp will automatically close and return to receipt mode. It will only be used
if print data is received before another station select command.
Where <n> is the delay in two second increments, the minimum time out is 0
seconds, and the maximum is 30 seconds. If <n> = 0, the delay is set to no time
out. The default is configurable.
FunctionSet eject wait time
ASCII[ESC] [EM] W <n>
Hexadecimal1BH 19H 57H <n>
Decimal<27> <25> <87> <n>
IPCL&%ZW <m1> <m2>
EPOSnone
DescriptionWhen a station select command is issued to the printer, the printer checks the
paper path. If there is a form in the paper path, an error is issued, and the
printer enters dejam mode. To allow the printer to receive back to back
transactions, the printer waits before issuing an error for the form to be
removed. This time is known as the eject wait time. The time starts after an
eject command and is only used if a station select command is issued before the
time out and there is a form in the path. Where <n> is the delay in two-second
increments, the minimum eject wait time is zero seconds, and the maximum is
30 seconds. If <n> = 0, the delay is set to no time out. The default is
configurable.
FunctionSet eject pause time
ASCII[ESC] [EM] D <n>
Hexadecimal1BH 19H 44H <n>
Decimal<27> <25> <68> <n>
IPCL&%ZD <m1> <m2>
EPOSnone
DescriptionThe command sets the delay between when the eject wait process detects that
the form has been removed and the next station select command has started.
The eject pause gives the operator time to completely remove the form. (Only
the smallest 4 bits are used). The default is configurable.
Where <n>:00 ms
15 ms
2150 ms, and so on until
15750 ms
12/16/99Rev MPage 69
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Station Control
FunctionTop of slip position
ASCII[ESC] [EM] P <n>
Hexadecimal1BH 19H 50H <n>
Decimal<27> <25> <80> <n>
IPCL&%ZP <m1> <m2>
EPOSnone
DescriptionThe [ESC] [EM] P <n> command adjusts the position of the first line of print
in slip mode.
Where <n> is the offset from the top of the form in 1/72 inch, n may be from 0
or 0/72 to 15 or 15/72 inch. The slip position command allows fine adjustment
of the top of inserted forms. The default is configurable.
Notes1.This command must be issued before the station select command. It is only
active for front form validation operations. Once issued, the value will be
used until the printer is power cycled or the command is reissued.
2.In normal mode, printing begins 15/72 inch from the top edge of the form.
In EPOS mode, printing begins 1/5 inch from the top edge of the form.
FunctionSet left/right print margin
ASCII[ESC] X <n1> <n2>
Hexadecimal1BH 58H <n1> <n2>
Decimal<27> <88> <n1> <n2>
IPCLnone
EPOS[ESC] l, [ESC] Q
DescriptionThe [ESC] X <n1> <n2> command sets the left and right print margins in
characters from the home position.
Where: <n1> = left margin
<n2> = right margin
Note: the absolute position depends on the current print pitch.
8 cpi10 cpi12 cpi15 cpi17.1 cpi20 cpi24 cpi
Max. columns
<n1>
<n2>
Table 16 Values for the left and right print margins
22283442485666
1 to 201 to 261 to 301 to 391 to 431 to 521 to 63
<n1>+2
to 22
<n1>+2
to 28
<n1>+3
to 34
If the left and right margins are set to the right of the current horizontal
position, the new left and right margins become valid in the same line.
If the left margin is set to the left of the current horizontal position and the
right margin to the right of the current horizontal position, the right margin
becomes valid in the same line, but the left margin setting becomes valid in the
next line.
When the left and right margins are set to the left of the current horizontal
position, both left and right margin settings appear to become valid in the next
line. This is because an auto-CR is performed by the following data.
<n1>+3
to 42
<n1>+4
to 48
<n1>+4
to 56
<n1>+4
to 66
Page 70Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Station Control
FunctionEnable or disable dual station operation
ASCII[ESC] l <n>
Hexadecimal1BH 6CH <n>
Decimal<27> <108> <n>
IPCL&%SD (enable dual station)
IPCL&%SS (enable single station)
EPOSnone
DescriptionThe [ESC] l <n> command enables or disables dual station mode. If n = 1, dual
station mode is enabled. In dual station mode, both the receipt and
validation/slip paper feed drive will operate allowing the journal to record the
information printed on the inserted form. If n = 0, the printer will revert back
to single station operation. The effect of this command is to enable receipt feed
in slip or validation modes.
NoteAny station select command will disable dual station mode.
12/16/99Rev MPage 71
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
MICR Reader
5.12 MICR Reader
5.12.1 Overview
The MICR reader is an option on the Series 90PLUS Printer. It is attached to the front of the printer and
allows a document having MICR data on it to be read and positioned for print.
MICR is an acronym for Magnetic Ink Character Recognition. A MICR reader's function is to read the
information printed on the bottom of a check and transmit that information to the host. The line of
information at the bottom of a check is called MICR because it is printed in magnetic ink. The magnetic
ink contains iron particles, which may be read using MICR technologies.
Check readers are able to recognize the characters using either Optical Character Recognition (OCR) or
magnetic reading technology. Some check readers intended for retail point-of-sale use OCR techniques to
read the MICR information. Because an OCR check reader can be defrauded using a pen or pencil, the
technique has been rejected by the market.
The MICR reader only recognizes magnetic ink. It is not an optical reader. The Series 90PLUS MICR
reader is based on a technique which uses a magnetic read head to pick up a signal from a document
containing magnetic ink. The Series 90PLUS MICR reader recognizes E13-B characters. It does not read
CMC-7 characters. (CMC-7 is used in Latin America and Europe).
For a complete description of the MICR reader’s operation and programming, refer to the PcOS Series90PLUS MICR Programmer’s Guide.
The following is a brief list of MICR commands. These commands are not valid unless a MICR reader is
attached.
Note: The MICR reader is not supported in EPSON mode.
FunctionMICR reader reset
ASCII[ESC] mI
Hexadecimal1BH 6DH 49H
Decimal<27> <109> <73>
IPCL&%MQ
Return[ETB] <l> Status
DescriptionThe [ESC] mI command resets the MICR reader to the initial state. It returns
status as a result. The status is always 0 unless the reader is defective.
Page 72Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
MICR Reader
FunctionMICR reader status request
ASCII[ESC] mS
Hexadecimal1BH 6DH 53H
Decimal<27> <109> <83>
IPCL&%MS
Return[ETB] <3> Status
DescriptionThe [ESC] mS command causes the MICR reader to return its current status.
The status bits are typically defined as follows:
(Bit 0) 001H, 00H, 63H Reader has stopped and is idle.
(Bit 2) 004H, 00H, 63H Read is complete.
(Bit 3) 008H, 00H, 63H Document is in reader.
(Bit 7) 080H, 00H, 63H Reader is ready.
00H, 63H Only look at first byte (63H is not always the case).
FunctionMICR read request (No data is returned).
ASCII[ESC] mP
Hexadecimal1BH 6DH 50H
Decimal<27> <109> <80>
IPCLnone
Returnnone
DescriptionThe [ESC] mP command asks the MICR reader to wait for and then read a
document. It does not return the data or any resulting error status. Inquire
commands should be used to track the read process. The [ESC] mD (return
data) command will then return the MICR data.
FunctionMICR read request with a check already in throat (No data is returned).
ASCII[ESC] mO
Hexadecimal1BH 6DH 4F
Decimal<27> <109> <79>
IPCLnone
Returnnone
DescriptionThe [ESC] mO command asks the MICR reader to read a document already in
the reader. If the document is not present, it will wait for it. It does not return
the data or any resulting error status. Inquire commands should be used to track
the read process. The [ESC] mD (return data) command will then return the
MICR data.
FunctionMICR read request and data return
ASCII[ESC] mR
Hexadecimal1BH 6DH 52H
Decimal<27> <109> <82>
IPCL&%MR
Return[ETB] <l> Data or [CAN] <l> Status
DescriptionThe [ESC] mR command asks the MICR reader to wait for and then read a
document. It returns the data ([ETB],<length>, read states, or data) or a result
error status ([CAN], <length>, or failure status).
12/16/99Rev MPage 73
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
MICR Reader
Failure Status BytesDescription
0CFH, 00HDocument speed is too slow.
0CEH, 00HSensor error has occurred.
0CDH, 00HPaper jam has occurred.
0CCH, 00HNo read has occurred.
Read Status BitsDescription
Bit 0Data is present.
Bit 1Amount field is present.
Bit 2Amount field is present with errors.
Bit 3Transit field check-sum has failed.
Bit 4Auxiliary On-Us field is present.
Bit 5Unreadable data is present (not including amount
field).
Bit 6Always 1
Bit 7Always 0
Table 17 MICR status fields
FunctionMICR data request
ASCII[ESC] mD
Hexadecimal1BH 6DH 44H
Decimal<27> <109> <68>
IPCL&%MD
Return[ETB] <length> read status, data or [CAN] <length> fault status
DescriptionThe [ESC] mD command asks the MICR reader to return previously read data.
The response is the same as the read command.
FunctionMICR load request
ASCII[ESC] mL
Hexadecimal1BH 6DH 4CH
Decimal<27> <109> <76>
IPCL&%ML
Returnnone
DescriptionThe [ESC] mL command asks the printer to load a previously read document
into print position. No status is returned. If the load fails, the printer enters a
load error mode. In this case, the document will be released and must be
reloaded into the printer using the normal slip path.
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
MICR Reader
DescriptionThe [ESC] mE command asks the printer to reject the document. The document
is fed through the printer and ejected out of the top. The document is then
released.
FunctionMICR transport request
ASCII[ESC] mT
Hexadecimal1BH 6DH 54H
Decimal<27> <109> <84>
IPCL&%MT
Returnnone
DescriptionThe [ESC] mT command asks the printer to load a document for printing. The
document is fed through the reader but not read. The document is then
positioned to the top of the form.
FunctionSet MICR start delay set
ASCII[ESC] [EM] M <n>
Hexadecimal1BH 19H 4DH <n>
Decimal<27> <25> <77> <n>
IPCL&%ZM <m1>
EPOSnone
DescriptionThe [ESC] [EM] M <n> command adjusts the delay from when the MICR
document sensor sees the document until the transport is started. The command
allows time for the operator to align the document before the reader clamps it.
The default is 150 milliseconds.
Where <n>:00 ms
1100 ms
2200 ms, and so on until
7700 ms
FunctionMICR read cancel
ASCII[ENQ] <12>
Hexadecimal05H 0CH
Decimal<5> <12>
IPCLnone
DescriptionThe [ENQ] <12> command is a real-time command that forces a MICR read
command to stop and return no data. The command can be used to get the
printer out of a read command. It has no other effect on the printer and is
always acknowledged. (See another ENQ command for a description). If the
read is complete before the ENQ <12> is issued, the read command will operate
normally.
specified, the symbols shown in the table below are used. The command does
not save the table to the configuration EEPROM.
Where:n = the ID
m = the character to translate to
12/16/99Rev MPage 75
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
MICR Reader
Table ID <n>Code <m>HexFunction
1T74HTransit symbol
2-2DHDash symbol
3A61HAmount symbol
4O6FHOn-Us symbol
5<sp>20HBlanks between characters
6?3FHRejected character
Table 18 MICR translation characters
Page 76Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Miscellaneous Controls
5.13 Miscellaneous Controls
FunctionClear print buffer
ASCII[CAN]
Hexadecimal18H
Decimal<24>
IPCL&%RP
EPOS[CAN]
DescriptionThe [CAN] command clears the print buffer and any unprinted information in the
printer received before the [CAN]. The CAN command does not restore default
conditions. It only clears the print buffers.
If the input buffer is not being processed (because the printer is out of paper or the
form is not inserted), the CAN command will not be processed until after the error
is cleared.
FunctionReturn a status to the host during processing
ResponseSerial/Parallel, IEEE 1284Parallel, non-IEEE 1284
[SOH]<n>…not supported via PE
DescriptionThe command can be placed in the print data and, when processed by the
printer, will return a progress status marker. The value of <n> can be any 8-bit
value. It is returned to the host unaltered. The intent is for it to be a sequence
number. The command can be used to track the print progress of the printer or
verify that the data has been printed.
NoteThe command is a line terminator and causes the printer to print all previous
data. If a normal line terminator (like a [CR]) is not supplied, right justify and
autocenter will not function correctly. All data will be left justified. [ESC] q
does not perform a [CR] or [LF] function.
12/16/99Rev MPage 77
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Miscellaneous Controls
FunctionOpen cash drawer
ASCII[ESC] x <n>
Hexadecimal1BH 78H <n>
Decimal<27> <120> <n>
IPCL&%D1 for Cash Drawer 1
IPCL&%D2 for Cash Drawer 2
EPOS[ESC] p
DescriptionThe [ESC] x <n> command energizes the Cash Drawer n for 150 milliseconds.
Where <n>: <1> (01H) or 1 (31H) for Cash Drawer 1
<2> (02H) or 2 (32H) for Cash Drawer 2
The time period the drawer is activated can be changed in the configuration menu.
The activation time can be set from 25 to 250 milliseconds.
Notes1.The open cash drawer commands are processed as part of the print data. They
are not immediate commands. They are not processed until they are found in
the input buffer by the print processor.
2.Cash Drawer 2 is factory configurable in one of two modes. Either Pin 1 or 5 is
active depending on an internal jumper setting. The factory default is Pin 1.
Cash Drawer 1 is always on Pin 5.
3.The cash drawer status is defined as an open circuit for drawer closed.
FunctionPrint suppress and data pass-through
ASCII[ESC] < <n>
Hexadecimal1BH 3CH <n>
Decimal<27> <60> <n>
IPCL&%PT <n>
EPOS[ESC] = <n>
DescriptionThe [ESC] < <n> command provides print suppress and data pass-through features.
Where:Bit 0 Printer select
Bit 1 Pass-through (On)
Bits 2 - 7 Undefined
If Bit 0 is clear, the printer will stop processing data. If Bit 1 is set, the data will be
passed through the printer and be sent out on the serial port.
Notes1.The pass-through command is processed as part of the print data. The data are
not processed until they are found in the input buffer by the print processor.
They are not immediate commands. The printer must be on-line and ready to
activate the command.
2.If the printer is configured for parallel operation, the data will still pass-
through on the serial port. The serial port is not generally connected.
3.The operation of the command can be altered by the print suppress
configuration and requires that the pass-through and print-suppress functions
be enabled in the configuration menu.
4.These commands will not function when Series 50 compatibility is turned on.
(Series 50 pass-through must be used.)
5.Multidrop is operational during suppress and pass-through. If a multidrop
address is present in the pass-through data, it will be processed.
Page 78Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Miscellaneous Controls
FunctionControl Feature Commands
ASCII[ESC] y <n>
Hexadecimal1BH 79H <n>
Decimal<27> <121> <n>
IPCL&%Y0 through 9 or &%YX <m1> <m2> <m3> (for numbers greater than 9)
EPOS[ESC] y <n>
Where n:0Disables quiet mode operation
1Enables quiet mode operation
2Reinitializes the printer and forces IBM mode
3Reinitializes the printer and forces EPOS mode
4Disables IPCL commands
5Enables IPCL commands (Note: Once disabled, the
command will not be a valid IPCL code).
6Disables ENQ processing
7Enables ENQ processing
8Enables extended diagnostics
11Overlays the current character chart with Group 2 OCR
MA characters
12Replaces the OCR characters with the normal characters
128+Sets Windows control flags
10000001Disables the next eject command, which allows Windows
drivers to do station select commands with paper source
selections. This is reset after it is used.
10000010Disables the next knife cut command
10000100Flags a MICR operation from Windows
10001000Not defined
10010000Causes the next slip select to ignore the form sensors
10100000Causes the next receipt select to ignore the form sensors
when in receipt mode
11000000Not defined
DescriptionThe [ESC] y <n> command enables and disables command set features.
It is possible that the IPCL commands will interfere with the print data. If this is the
case, they can be disabled with an [ESC] y <4>.
Notes1.Quiet mode operation prints by making two passes for every pass in normal
mode. It generates less noise because only half the print wires are activated in
each pass. Quiet mode is slow and should only be used if quiet operation is
necessary.
2.ESC y <2> and <3> allow the printer to be switched between normal and EPOS
modes. When the switch takes place, the current print buffer is printed, and the
printer reinitializes. These commands do not permanently change the
configuration. A power on reset will restore the mode that was configured in
menu mode. A reset by command or from the INIT pin will not restore the
mode.
3.ESC y <6> and <7> enable and disable the inquire processing. These
commands are not processed as they are received, but are buffered and then
processed. Because of this, [ENQ] commands sent after a disable may be
answered. In addition, [ENQ]’s sent after an enable may not be answered.
4.The printer has a resident OCR-MA font that only works in utility mode and
contains Group 2 characters. They are defined and mapped per ANSI X3.111-
1986. Once mapped into a code page, they can be removed by issuing an [ESC]
y <12> command or a code page select command.
12/16/99Rev MPage 79
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Miscellaneous Controls
EPOS noteThe [ESC] y command is active in EPOS mode; however, Modes 5 and 6 are
disabled.
WindowsWindows drivers to temporarily disable or alter select commands use Windows
control flags. Windows print drivers are based on non-POS printers. To allow these
drivers to better operate in a POS environment, the printer can be instructed to
ignore or alter the operation of select commands on the next occurrence. This
command should not be used by typical applications.
FunctionEnable dynamic response
ASCII[ESC] w <n>
Hexadecimal1BH 77H <n>
Decimal<27> <119> <n>
IPCLnone
EPOS[GS] a <n>
Where n defines the features that cause dynamic responses:
Bit 0 Cash Drawer 0ACK/NAK <1>
Bit 1 Cash Drawer 1ACK/NAK <2>
Bit 2 Paper out statusACK/NAK <4>
Bit 3 Form in sensorACK/NAK <5>
Bit 4 Paper low sensorACK/NAK <3>
Bit 5 Form present sensorACK/NAK <6>
Bit 6 Form clamp statusACK/NAK <7>
Bit 7 Cover statusACK/NAK <8>
Dynamic status can be used to allow the host to sense status changes without
sending repeated inquiry commands. The operation of the dynamic response varies
depending on the configuration of the printer. If the printer is configured for serial
or parallel, IEEE 1284 operation, more than one status can be sensed because the
printer will respond to status changes as if an [ENQ] were issued. In parallel mode,
only one status should be requested. If more than one bit is active, the resulting
status on the PE signal is not defined.
NotePower up default is paper out on PE signal.
FunctionMultidrop control
ASCII[SOH] <n>
Hexadecimal01H <n>
Decimal<1> <n>
IPCLnone
Where <n> is the printer address, addresses of A, B, or C are configurable.
In multidrop mode, the printer must be addressed. This is the addressing command.
If the printer is configured with an address of ‘A,’ the printer will operate when
addressed. When any other address is sent to the printer, it will enter print suppress
mode. An address of ‘Z’ is a universal address and will always activate the printer.
Page 80Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Series 50 Compatibility
5.14 Series 50 Compatibility Commands
To allow the Series 90PLUS Printer to replace the Series 50 Printer without effecting the Series 50’s
application, several special Series 50 commands are available in the Series 90PLUS Printer as 50 extensions.
Because these commands can have effects that Series 90PLUS applications may not want, these commands
must be enabled.
To make the 50 commands operational, enable the 50 extensions in the configuration menu.
FunctionExtended Series 50 pass-through
ASCII[ESC] # or [ESC] d or [ESC] [RS] and [ESC] ”
Hexadecimal1BH 23H or 1BH 64H or 1BH 1EH and 1BH 22H
Decimal<27> <35> or <27> <100> or <27> <30> and <27> <34>
Description[ESC] # or [ESC] d turn on pass-through, and [ESC] [RS] or [ESC] ” turn off pass-
through. This command requires that the pass-through function be enabled in the
configuration menu.
12/16/99Rev MPage 81
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Printer Status Set/Inquire
5.15 Printer Status Set/Inquire
The Series 90PLUS Printer is designed to be used as part of an automated system where the host computer
makes every attempt to correct problems with the printer. In addition, the host application requires that it be
able to obtain more information from the printer than is typical of normal computer printers. A normal
computer printer does not have cash drawers and slip stations. As a result, the standard printer protocol must
be extended to deal with the additional features of a point-of-sale printer.
The Series 90PLUS Printer has defined a set of status inquiry commands that will allow a host to obtain
information about the printer and devices connected to it. The method chosen to interact with the computer is
designed to allow a reasonable approach to the host application. It will not always be possible for an existing
application to use inquire commands unless the communication drivers are available to the programmer.
All inquire commands require a response from the printer. For this reason, the parallel, non-IEEE 1284;
parallel, IEEE 1284; and serial operation of inquire commands are different. In serial and parallel, IEEE 1284
modes, all inquire commands are responded to by acknowledged (ACK) or not acknowledged (NAK) and then
the command ID. In parallel, non-IEEE 1284 operation, the paper-error (PE) signal is driven as a response to
an inquire command.
5.15.1 Parallel, Non-IEEE 1284 Mode Inquire
There are several status inquiry commands and inquire control commands. The inquire character is
treated differently from all other characters received by the printer. Under normal operating conditions, all
information that is sent to the printer is received and placed in a holding buffer. The information stays in
the holding buffer until the printer interprets or prints it.
In parallel, non-IEEE 1284 operation there is no easy way to return complex information to the host. For
this reason, the PE signal is used for inquire responses. The FAULT signal will not be asserted by inquire
requests. If a true PE is being signaled, the FAULT line will also be driven. It is, therefore, possible to
distinguish between a paper error and an inquire response.
In parallel mode, the printer will respond to the inquire command before the parallel sequence is
complete. In other words, when the parallel port acknowledges the ID part of the inquire sequence, the PE
signal will be valid. The host must, however, remember what status was requested as the printer has no
way of signaling that information. In addition, the host must not interpret the PE signal as an error but as
a response to an inquire command.
There are two modes in which inquire responses can be signaled. These two modes result in either a
dynamic or static PE. When a dynamic PE occurs, the inquiry is sent once, and the PE signal follows the
requested status. If PE remains static, the status does not change.
Receipt paper status is always dynamic. If the PE signal is to be returned to the valid paper-error state, an
[ENQ] <4> should be issued when all other inquires are completed.
Page 82Rev M12/16/99
Programmer's GuidePcOS Series 90PLUSPrinter Control Codes
Printer Status Set/Inquire
PE
DATA
STROBE
BUSY
ACK
Figure 20 PE to ENQ request timing
IDNext
Valid
5.15.2 Serial Mode Inquire
All inquire commands require a response from the printer. In serial operation, inquire commands are
responded to by an acknowledged (ACK) or not acknowledged (NAK), the command ID, and, in some
cases, status. The serial ACK or NAK responses are always uniform and followed with a command ID.
This makes the design of the host application easier.
The printer will always accept serial data even if the printer is off-line. It is possible to send inquire
commands to the printer even when it is off-line. Because inquire commands are processed before they go
in the buffer, the printer will respond even when it is busy.
In serial mode, it is desirable that the response to an inquire command be received by the host before
another inquire command is issued to the printer. When the printer receives an inquiry, it must generate a
response. If inquiries are sent to the printer too fast, the printer will spend all of its time responding to
them and have no time to print.
5.15.3 Parallel, IEEE 1284 Mode Inquire
In parallel, IEEE 1284 mode, there is a way to return status information to the host. After the host makes
an inquire request, it can activate parallel, IEEE 1284 Mode 0, reverse channel and wait for a response
from the printer. The response to an inquire command is identical to serial mode.
The printer will always accept parallel, IEEE 1284 reverse channel requests but will not accept inquire
commands when it is off-line. It is possible to obtain status when off-line by placing the printer in
dynamic response mode before the printer goes off-line. The IEEE 1284 reverse channel will then respond
to status changes even if the printer is off-line. It is also possible to configure the printer, so it will not go
off-line in most cases. Power off, paper out, and faults will always generate off-line status.
5.15.4 Dynamic Response Mode
Dynamic status, [ESC] w <n>, can be used to allow the host to sense status changes without sending
repeated inquire commands. The operation of the dynamic response varies depending on the configuration
of the printer. If the printer is configured for serial or parallel, IEEE 1284 operation, more than one status
can be sensed as the printer will respond to status changes as if an [ENQ] were issued. In parallel mode,
only one status should be requested. If more than one bit is active, the resulting status on the PE signal
will not be defined.
12/16/99Rev MPage 83
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Printer Status Set/Inquire
The reply to dynamic responses is the same as inquire commands. That is, if the cash drawer status is to
be sensed, the PE or ACK/NAK will be the same as for inquire commands.
5.15.5 Inquire Commands
FunctionInquire printer status
ASCII[ENQ] <n>
Hexadecimal05H <n>
Decimal<5> <n>
IPCLnone
EPOS[GS] r or [DLE] [ENQ] or [DLE] [EOT]
DescriptionThe [ENQ] <n> command inquires as to the printer’s status and returns the
result. The following inquires are defined.
NoteIf the printer is off-line, the inquire may not be accepted.
ResponseACK <10> (06H 0AH)No response in parallel mode.
The command was accepted.
NAK <10> (15H 0AH)
The command was rejected.
DescriptionThe ENQ <10>, EPOS "DLE ENQ n" commands, and the INIT pin all
have the same effect and are termed "Reset" commands. To prevent data
loss, the printer will try to finish printing any buffered data. This will fail
if operator intervention with the printer is required. The reset operation is
saved until the printer goes idle. In the case of the slip request command or
any command that waits for the operator, the printer is idle. If the printer is
idle and a reset is received or pending, the printer will reset, and the buffer
will be cleared. If the host resets an operator intervention operation, any
remaining buffered data will be cleared.
When the printer receives a reset command, the printer will go off-line
and/or show a busy signal until the reset completes. In serial mode, the
printer can have information in its high-speed buffer that was received
after the reset command was issued, but before it was processed. If the host
application continues to send information to the printer after a reset
command, some of that information may be processed before the reset is
processed. In parallel mode, the printer will go busy after the reset is
received and before the next byte is accepted.
The printer will accept an [ENQ] <10> in parallel mode. It will not be
acknowledged, however. If both the serial and parallel ports are active, the
serial reset will not be acknowledged either because the reset operation will
remove the parallel response. In parallel, IEEE 1284 mode, the response
buffer is cleared by a reset command preventing responses in IEEE 1284
mode as well.
NoteThere is a menu selection that will block the command. If reset inhibit is
set in the configuration menu, the command will be ignored.
12/16/99Rev MPage 87
Printer Control CodesPcOS Series 90PLUSProgrammer's Guide
Printer Status Set/Inquire
FunctionInquire power-cycle status
ASCII[ENQ] <11>
Hexadecimal05H 0BH
Decimal<5> <11>
FunctionHas the printer been power cycled since the last request?
Serial/Parallel, IEEE 1284Parallel, non-IEEE 1284
ResponseACK <11> (06H 0BH) PE low
Printer power has been cycled
since the last [ENQ] <11>.
NAK <5> (15H 0BH)PE high
Printer has not power cycled
since the last [ENQ] <11>.
DescriptionThe first time after a reset, the command will return [ACK] <11>, after
that the command will return [NAK] <11>. The command allows the
application to determine if the printer has been power cycled and needs to
be reinitialized. The [ENQ] <10> command and the INIT signal on the
parallel port will both cause the printer to return power-up status.
FunctionMICR read cancel
ASCII[ENQ] <12>
Hexadecimal05H 0CH
Decimal<5> <12>
IPCLnone
DescriptionThe [ENQ] command is a real-time command that forces a MICR read
command to stop and return no data. The command can be used to get the
printer out of a read command. It has no other effect on the printer and is
always acknowledged. (See another inquire command for a description). If the
read is complete before the ENQ <12> is issued, the read command will operate
normally.
Page 88Rev M12/16/99
Loading...
+ 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.